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 QPICTUREFORMATPLUGIN_H
00025 #define QPICTUREFORMATPLUGIN_H
00026
00027 #include <QtCore/qplugin.h>
00028 #include <QtCore/qfactoryinterface.h>
00029
00030 QT_BEGIN_HEADER
00031
00032 QT_MODULE(Gui)
00033
00034 #if !defined(QT_NO_LIBRARY) && !defined(QT_NO_PICTURE)
00035
00036 class QPicture;
00037 class QImage;
00038 class QString;
00039 class QStringList;
00040
00041 struct Q_GUI_EXPORT QPictureFormatInterface : public QFactoryInterface
00042 {
00043 virtual bool loadPicture(const QString &format, const QString &filename, QPicture *) = 0;
00044 virtual bool savePicture(const QString &format, const QString &filename, const QPicture &) = 0;
00045
00046 virtual bool installIOHandler(const QString &) = 0;
00047 };
00048
00049 #define QPictureFormatInterface_iid "com.trolltech.Qt.QPictureFormatInterface"
00050 Q_DECLARE_INTERFACE(QPictureFormatInterface, QPictureFormatInterface_iid)
00051
00052
00053 class Q_GUI_EXPORT QPictureFormatPlugin : public QObject, public QPictureFormatInterface
00054 {
00055 Q_OBJECT
00056 Q_INTERFACES(QPictureFormatInterface:QFactoryInterface)
00057 public:
00058 explicit QPictureFormatPlugin(QObject *parent = 0);
00059 ~QPictureFormatPlugin();
00060
00061 virtual QStringList keys() const = 0;
00062 virtual bool loadPicture(const QString &format, const QString &filename, QPicture *pic);
00063 virtual bool savePicture(const QString &format, const QString &filename, const QPicture &pic);
00064 virtual bool installIOHandler(const QString &format) = 0;
00065
00066 };
00067
00068 #endif // QT_NO_LIBRARY || QT_NO_PICTURE
00069
00070 QT_END_HEADER
00071
00072 #endif // QPICTUREFORMATPLUGIN_H