Convert GIF plugin to the new format
authorLars Knoll <lars.knoll@nokia.com>
Thu, 9 Feb 2012 20:34:26 +0000 (21:34 +0100)
committerQt by Nokia <qt-info@nokia.com>
Fri, 17 Feb 2012 07:50:41 +0000 (08:50 +0100)
Change-Id: I3adf1d2402a07213cb4cb5193c465bd820919bd1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
src/plugins/imageformats/gif/gif.json [new file with mode: 0644]
src/plugins/imageformats/gif/gif.pro
src/plugins/imageformats/gif/main.cpp
src/plugins/imageformats/gif/main.h [new file with mode: 0644]

diff --git a/src/plugins/imageformats/gif/gif.json b/src/plugins/imageformats/gif/gif.json
new file mode 100644 (file)
index 0000000..b599b40
--- /dev/null
@@ -0,0 +1,3 @@
+{
+    "Keys": [ "gif" ]
+}
index a4cde20..b85ee98 100644 (file)
@@ -3,6 +3,8 @@ load(qt_plugin)
 
 include(../../../gui/image/qgifhandler.pri)
 SOURCES += $$PWD/main.cpp
+HEADERS += $$PWD/main.h
+OTHER_FILES += gif.json
 
 DESTDIR = $$QT.gui.plugins/imageformats
 target.path += $$[QT_INSTALL_PLUGINS]/imageformats
index 0b6c99a..9dd61c4 100644 (file)
@@ -44,6 +44,8 @@
 
 #ifndef QT_NO_IMAGEFORMATPLUGIN
 
+#include "main.h"
+
 #ifdef QT_NO_IMAGEFORMAT_GIF
 #undef QT_NO_IMAGEFORMAT_GIF
 #endif
 
 QT_BEGIN_NAMESPACE
 
-class QGifPlugin : public QImageIOPlugin
-{
-public:
-    QGifPlugin();
-    ~QGifPlugin();
-
-    QStringList keys() const;
-    Capabilities capabilities(QIODevice *device, const QByteArray &format) const;
-    QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const;
-};
 
 QGifPlugin::QGifPlugin()
 {
@@ -90,9 +82,6 @@ QImageIOHandler *QGifPlugin::create(QIODevice *device, const QByteArray &format)
     return handler;
 }
 
-Q_EXPORT_STATIC_PLUGIN(QGifPlugin)
-Q_EXPORT_PLUGIN2(qgif, QGifPlugin)
-
 #endif // QT_NO_IMAGEFORMATPLUGIN
 
 QT_END_NAMESPACE
diff --git a/src/plugins/imageformats/gif/main.h b/src/plugins/imageformats/gif/main.h
new file mode 100644 (file)
index 0000000..97335b1
--- /dev/null
@@ -0,0 +1,65 @@
+/****************************************************************************
+**
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/
+**
+** This file is part of the plugins of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** GNU Lesser General Public License Usage
+** This file may be used under the terms of the GNU Lesser General Public
+** License version 2.1 as published by the Free Software Foundation and
+** appearing in the file LICENSE.LGPL included in the packaging of this
+** file. Please review the following information to ensure the GNU Lesser
+** General Public License version 2.1 requirements will be met:
+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Nokia gives you certain additional
+** rights. These rights are described in the Nokia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU General
+** Public License version 3.0 as published by the Free Software Foundation
+** and appearing in the file LICENSE.GPL included in the packaging of this
+** file. Please review the following information to ensure the GNU General
+** Public License version 3.0 requirements will be met:
+** http://www.gnu.org/copyleft/gpl.html.
+**
+** Other Usage
+** Alternatively, this file may be used in accordance with the terms and
+** conditions contained in a signed written agreement between you and Nokia.
+**
+**
+**
+**
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <qimageiohandler.h>
+#include <qstringlist.h>
+
+#ifdef QT_NO_IMAGEFORMAT_GIF
+#undef QT_NO_IMAGEFORMAT_GIF
+#endif
+#include <qgifhandler_p.h>
+
+QT_BEGIN_NAMESPACE
+
+class QGifPlugin : public QImageIOPlugin
+{
+    Q_OBJECT
+    Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QImageIOHandlerFactoryInterface" FILE "gif.json")
+public:
+    QGifPlugin();
+    ~QGifPlugin();
+
+    QStringList keys() const;
+    Capabilities capabilities(QIODevice *device, const QByteArray &format) const;
+    QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const;
+};
+
+QT_END_NAMESPACE