kio
previewjob.h
Go to the documentation of this file.00001
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