KIO
kfilemetapreview.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef KFILEMETAPREVIEW_H
00010 #define KFILEMETAPREVIEW_H
00011
00012 #include <QHash>
00013 #include <QStackedWidget>
00014 #include <kpreviewwidgetbase.h>
00015 #include <kurl.h>
00016 #include <kmimetype.h>
00017
00018 class KIO_EXPORT KFileMetaPreview : public KPreviewWidgetBase
00019 {
00020 Q_OBJECT
00021
00022 public:
00023 KFileMetaPreview(QWidget *parent);
00024 ~KFileMetaPreview();
00025
00026 virtual void addPreviewProvider( const QString& mimeType,
00027 KPreviewWidgetBase *provider );
00028 virtual void clearPreviewProviders();
00029
00030 public Q_SLOTS:
00031 virtual void showPreview(const KUrl &url);
00032 virtual void clearPreview();
00033
00034 protected:
00035 virtual KPreviewWidgetBase *previewProviderFor( const QString& mimeType );
00036
00037 private:
00038 void initPreviewProviders();
00039 KPreviewWidgetBase* findExistingProvider(const QString& mimeType, const KMimeType::Ptr& mimeInfo) const;
00040
00041 QStackedWidget *m_stack;
00042 QHash<QString,KPreviewWidgetBase*> m_previewProviders;
00043 bool haveAudioPreview;
00044
00045
00046 static KPreviewWidgetBase * createAudioPreview( QWidget *parent );
00047 static bool s_tryAudioPreview;
00048
00049 private:
00050 class KFileMetaPreviewPrivate;
00051 KFileMetaPreviewPrivate *d;
00052 };
00053
00054 #endif // KFILEMETAPREVIEW_H