previewjob.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __kio_previewjob_h__
00025 #define __kio_previewjob_h__
00026
00027 #include <kfileitem.h>
00028 #include <kio/job.h>
00029
00030 class QPixmap;
00031
00032 namespace KIO {
00037 class KIO_EXPORT PreviewJob : public KIO::Job
00038 {
00039 Q_OBJECT
00040 public:
00057 PreviewJob( const KFileItemList &items, int width, int height,
00058 int iconSize, int iconAlpha, bool scale, bool save,
00059 const QStringList *enabledPlugins, bool deleteItems = false );
00060 virtual ~PreviewJob();
00061
00068 void removeItem( const KFileItem *item );
00069
00076 void setIgnoreMaximumSize(bool ignoreSize = true);
00077
00084 static QStringList availablePlugins();
00085
00091 static QStringList supportedMimeTypes();
00092
00096 virtual void kill( bool quietly = true );
00097
00098 signals:
00105 void gotPreview( const KFileItem *item, const QPixmap &preview );
00112 void failed( const KFileItem *item );
00113
00114 protected:
00115 void getOrCreateThumbnail();
00116 bool statResultThumbnail();
00117 void createThumbnail( QString );
00118
00119 protected slots:
00120 virtual void slotResult( KIO::Job *job );
00121
00122 private slots:
00123 void startPreview();
00124 void slotThumbData(KIO::Job *, const QByteArray &);
00125
00126 private:
00127 void determineNextFile();
00128 void emitPreview(const QImage &thumb);
00129 void emitFailed(const KFileItem *item = 0);
00130
00131 protected:
00132 virtual void virtual_hook( int id, void* data );
00133 private:
00134 struct PreviewJobPrivate *d;
00135 };
00136
00157 KIO_EXPORT PreviewJob *filePreview( const KFileItemList &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 );
00158
00179 KIO_EXPORT PreviewJob *filePreview( const KURL::List &items, int width, int height = 0, int iconSize = 0, int iconAlpha = 70, bool scale = true, bool save = true, const QStringList *enabledPlugins = 0 );
00180 }
00181
00182 #endif
|