metainfojob.h
00001 // -*- c++ -*- 00002 // vim: ts=4 sw=4 et 00003 /* This file is part of the KDE libraries 00004 Copyright (C) 2001 Rolf Magnus <ramagnus@kde.org> 00005 parts of this taken from previewjob.h 00006 00007 This library is free software; you can redistribute it and/or 00008 modify it under the terms of the GNU Library General Public 00009 License as published by the Free Software Foundation version 2.0. 00010 00011 This library is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 Library General Public License for more details. 00015 00016 You should have received a copy of the GNU Library General Public License 00017 along with this library; see the file COPYING.LIB. If not, write to 00018 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 00019 Boston, MA 02111-1307, USA. 00020 00021 $Id: metainfojob.h,v 1.5.2.1 2003/05/17 11:19:23 mueller Exp $ 00022 */ 00023 00024 #ifndef __kio_metainfojob_h__ 00025 #define __kio_metainfojob_h__ 00026 00027 #include <kio/job.h> 00028 00029 namespace KIO { 00033 class MetaInfoJob : public KIO::Job 00034 { 00035 Q_OBJECT 00036 public: 00042 MetaInfoJob(const KFileItemList &items, bool deleteItems = false); 00043 virtual ~MetaInfoJob(); 00044 00050 void removeItem( const KFileItem *item ); 00051 00057 static QStringList availablePlugins(); 00058 00063 static QStringList supportedMimeTypes(); 00064 00065 signals: 00070 void gotMetaInfo( const KFileItem *item ); 00076 void failed( const KFileItem *item ); 00077 00078 protected: 00079 void getMetaInfo(); 00080 00081 protected slots: 00082 virtual void slotResult( KIO::Job *job ); 00083 00084 private slots: 00085 void start(); 00086 void slotMetaInfo(KIO::Job *, const QByteArray &); 00087 00088 private: 00089 void determineNextFile(); 00090 // void saveMetaInfo(const QByteArray info); 00091 00092 private: 00093 struct MetaInfoJobPrivate *d; 00094 }; 00095 00105 MetaInfoJob* fileMetaInfo(const KFileItemList& items); 00106 00110 MetaInfoJob* fileMetaInfo(const KURL::List& items); 00111 } 00112 00113 #endif