summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/gui/image/qimageiohandler.cpp39
-rw-r--r--src/gui/image/qimageiohandler.h10
-rw-r--r--src/plugins/imageformats/gif/main.cpp5
-rw-r--r--src/plugins/imageformats/gif/main.h1
-rw-r--r--src/plugins/imageformats/ico/main.cpp5
-rw-r--r--src/plugins/imageformats/ico/main.h1
-rw-r--r--src/plugins/imageformats/jpeg/main.cpp5
-rw-r--r--src/plugins/imageformats/jpeg/main.h1
8 files changed, 13 insertions, 54 deletions
diff --git a/src/gui/image/qimageiohandler.cpp b/src/gui/image/qimageiohandler.cpp
index 153412fb29..c58642988e 100644
--- a/src/gui/image/qimageiohandler.cpp
+++ b/src/gui/image/qimageiohandler.cpp
@@ -171,9 +171,9 @@
support for different image formats to Qt.
Writing an image I/O plugin is achieved by subclassing this
- base class, reimplementing the pure virtual functions capabilities(),
- create(), and keys(), and exporting the class with the
- Q_EXPORT_PLUGIN2() macro. See \l{How to Create Qt Plugins} for details.
+ base class, reimplementing the pure virtual functions capabilities()
+ and create(), and exporting the class with the
+ Q_PLUGIN_METADATA() macro. See \l{How to Create Qt Plugins} for details.
An image format plugin can support three capabilities: reading (\l
CanRead), writing (\l CanWrite) and \e incremental reading (\l
@@ -182,8 +182,15 @@
create() should create an instance of your QImageIOHandler
subclass, with the provided device and format properly set, and
- return this handler. You must also reimplement keys() so that Qt
- knows which image formats your plugin supports.
+ return this handler.
+
+ The json metadata file for the plugin needs to contain information
+ about the image formats the plugins supports. For a jpeg plugin, this
+ could e.g. look as follows:
+
+ \code
+ { "Keys": [ "jpg", "jpeg" ] }
+ \endcode
Different plugins can support different capabilities. For example,
you may have one plugin that supports reading the GIF format, and
@@ -205,17 +212,6 @@
\value CanReadIncremental The plugin can read images incrementally.
*/
-/*!
- \class QImageIOHandlerFactoryInterface
- \brief The QImageIOHandlerFactoryInterface class provides the factory
- interface for QImageIOPlugin.
- \reentrant
-
- \internal
-
- \sa QImageIOPlugin
-*/
-
#include "qimageiohandler.h"
#include <qbytearray.h>
@@ -547,17 +543,6 @@ QImageIOPlugin::~QImageIOPlugin()
*/
/*!
- \fn QImageIOPlugin::keys() const
-
- Returns the list of image keys this plugin supports.
-
- These keys are usually the names of the image formats that are implemented
- in the plugin (e.g., "jpg" or "gif").
-
- \sa capabilities()
-*/
-
-/*!
\fn QImageIOHandler *QImageIOPlugin::create(QIODevice *device, const QByteArray &format) const
Creates and returns a QImageIOHandler subclass, with \a device
diff --git a/src/gui/image/qimageiohandler.h b/src/gui/image/qimageiohandler.h
index 0252ec02cc..16784504b6 100644
--- a/src/gui/image/qimageiohandler.h
+++ b/src/gui/image/qimageiohandler.h
@@ -114,18 +114,11 @@ private:
Q_DISABLE_COPY(QImageIOHandler)
};
-struct Q_GUI_EXPORT QImageIOHandlerFactoryInterface : public QFactoryInterface
-{
- virtual QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const = 0;
-};
-
#define QImageIOHandlerFactoryInterface_iid "org.qt-project.Qt.QImageIOHandlerFactoryInterface"
-Q_DECLARE_INTERFACE(QImageIOHandlerFactoryInterface, QImageIOHandlerFactoryInterface_iid)
-class Q_GUI_EXPORT QImageIOPlugin : public QObject, public QImageIOHandlerFactoryInterface
+class Q_GUI_EXPORT QImageIOPlugin : public QObject
{
Q_OBJECT
- Q_INTERFACES(QImageIOHandlerFactoryInterface:QFactoryInterface)
public:
explicit QImageIOPlugin(QObject *parent = 0);
virtual ~QImageIOPlugin();
@@ -138,7 +131,6 @@ public:
Q_DECLARE_FLAGS(Capabilities, Capability)
virtual Capabilities capabilities(QIODevice *device, const QByteArray &format) const = 0;
- virtual QStringList keys() const = 0;
virtual QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const = 0;
};
diff --git a/src/plugins/imageformats/gif/main.cpp b/src/plugins/imageformats/gif/main.cpp
index 9dd61c4499..28c7a3d333 100644
--- a/src/plugins/imageformats/gif/main.cpp
+++ b/src/plugins/imageformats/gif/main.cpp
@@ -62,11 +62,6 @@ QGifPlugin::~QGifPlugin()
{
}
-QStringList QGifPlugin::keys() const
-{
- return QStringList() << QLatin1String("gif");
-}
-
QImageIOPlugin::Capabilities QGifPlugin::capabilities(QIODevice *device, const QByteArray &format) const
{
if (format == "gif" || (device && device->isReadable() && QGifHandler::canRead(device)))
diff --git a/src/plugins/imageformats/gif/main.h b/src/plugins/imageformats/gif/main.h
index 97335b1968..51148684bd 100644
--- a/src/plugins/imageformats/gif/main.h
+++ b/src/plugins/imageformats/gif/main.h
@@ -57,7 +57,6 @@ public:
QGifPlugin();
~QGifPlugin();
- QStringList keys() const;
Capabilities capabilities(QIODevice *device, const QByteArray &format) const;
QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const;
};
diff --git a/src/plugins/imageformats/ico/main.cpp b/src/plugins/imageformats/ico/main.cpp
index 9c9525f48f..24138bfce3 100644
--- a/src/plugins/imageformats/ico/main.cpp
+++ b/src/plugins/imageformats/ico/main.cpp
@@ -45,11 +45,6 @@
QT_BEGIN_NAMESPACE
-QStringList QICOPlugin::keys() const
-{
- return QStringList() << QLatin1String("ico");
-}
-
QImageIOPlugin::Capabilities QICOPlugin::capabilities(QIODevice *device, const QByteArray &format) const
{
if (format == "ico")
diff --git a/src/plugins/imageformats/ico/main.h b/src/plugins/imageformats/ico/main.h
index 6c7634002a..99e9338e31 100644
--- a/src/plugins/imageformats/ico/main.h
+++ b/src/plugins/imageformats/ico/main.h
@@ -56,7 +56,6 @@ class QICOPlugin : public QImageIOPlugin
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QImageIOHandlerFactoryInterface" FILE "ico.json")
public:
- QStringList keys() const;
Capabilities capabilities(QIODevice *device, const QByteArray &format) const;
QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const;
};
diff --git a/src/plugins/imageformats/jpeg/main.cpp b/src/plugins/imageformats/jpeg/main.cpp
index ecda04864b..aeea040261 100644
--- a/src/plugins/imageformats/jpeg/main.cpp
+++ b/src/plugins/imageformats/jpeg/main.cpp
@@ -50,11 +50,6 @@
QT_BEGIN_NAMESPACE
-QStringList QJpegPlugin::keys() const
-{
- return QStringList() << QLatin1String("jpeg") << QLatin1String("jpg");
-}
-
QImageIOPlugin::Capabilities QJpegPlugin::capabilities(QIODevice *device, const QByteArray &format) const
{
if (format == "jpeg" || format == "jpg")
diff --git a/src/plugins/imageformats/jpeg/main.h b/src/plugins/imageformats/jpeg/main.h
index 8606eabdd9..99379a72d4 100644
--- a/src/plugins/imageformats/jpeg/main.h
+++ b/src/plugins/imageformats/jpeg/main.h
@@ -55,7 +55,6 @@ class QJpegPlugin : public QImageIOPlugin
Q_OBJECT
Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QImageIOHandlerFactoryInterface" FILE "jpeg.json")
public:
- QStringList keys() const;
Capabilities capabilities(QIODevice *device, const QByteArray &format) const;
QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const;
};