From 963b4c1647299fd023ddbe7c4a25ac404e303c5d Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Thu, 9 Feb 2012 21:34:26 +0100 Subject: Convert GIF plugin to the new format Change-Id: I3adf1d2402a07213cb4cb5193c465bd820919bd1 Reviewed-by: Thiago Macieira --- src/plugins/imageformats/gif/gif.json | 3 ++ src/plugins/imageformats/gif/gif.pro | 2 ++ src/plugins/imageformats/gif/main.cpp | 15 ++------ src/plugins/imageformats/gif/main.h | 65 +++++++++++++++++++++++++++++++++++ 4 files changed, 72 insertions(+), 13 deletions(-) create mode 100644 src/plugins/imageformats/gif/gif.json create mode 100644 src/plugins/imageformats/gif/main.h (limited to 'src/plugins/imageformats') diff --git a/src/plugins/imageformats/gif/gif.json b/src/plugins/imageformats/gif/gif.json new file mode 100644 index 0000000000..b599b40ffe --- /dev/null +++ b/src/plugins/imageformats/gif/gif.json @@ -0,0 +1,3 @@ +{ + "Keys": [ "gif" ] +} diff --git a/src/plugins/imageformats/gif/gif.pro b/src/plugins/imageformats/gif/gif.pro index a4cde20c6f..b85ee984ac 100644 --- a/src/plugins/imageformats/gif/gif.pro +++ b/src/plugins/imageformats/gif/gif.pro @@ -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 diff --git a/src/plugins/imageformats/gif/main.cpp b/src/plugins/imageformats/gif/main.cpp index 0b6c99a9e4..9dd61c4499 100644 --- a/src/plugins/imageformats/gif/main.cpp +++ b/src/plugins/imageformats/gif/main.cpp @@ -44,6 +44,8 @@ #ifndef QT_NO_IMAGEFORMATPLUGIN +#include "main.h" + #ifdef QT_NO_IMAGEFORMAT_GIF #undef QT_NO_IMAGEFORMAT_GIF #endif @@ -51,16 +53,6 @@ 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 index 0000000000..97335b1968 --- /dev/null +++ b/src/plugins/imageformats/gif/main.h @@ -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 +#include + +#ifdef QT_NO_IMAGEFORMAT_GIF +#undef QT_NO_IMAGEFORMAT_GIF +#endif +#include + +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 -- cgit v1.2.3