1 /****************************************************************************
2 **
3 ** Copyright (C) 2016 The Qt Company Ltd.
4 ** Contact: https://www.qt.io/licensing/
5 **
6 ** This file is part of the QtGui module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and The Qt Company. For licensing terms
14 ** and conditions see https://www.qt.io/terms-conditions. For further
15 ** information use the contact form at https://www.qt.io/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 3 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL3 included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 3 requirements
23 ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24 **
25 ** GNU General Public License Usage
26 ** Alternatively, this file may be used under the terms of the GNU
27 ** General Public License version 2.0 or (at your option) the GNU General
28 ** Public license version 3 or any later version approved by the KDE Free
29 ** Qt Foundation. The licenses are as published by the Free Software
30 ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31 ** included in the packaging of this file. Please review the following
32 ** information to ensure the GNU General Public License requirements will
33 ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34 ** https://www.gnu.org/licenses/gpl-3.0.html.
35 **
36 ** $QT_END_LICENSE$
37 **
38 ****************************************************************************/
39 
40 #include "qpictureformatplugin.h"
41 #if !defined(QT_NO_PICTURE)
42 #include "qpicture.h"
43 
44 QT_BEGIN_NAMESPACE
45 
46 /*!
47     \obsolete
48 
49     \class QPictureFormatPlugin
50     \brief The QPictureFormatPlugin class provides an abstract base
51     for custom picture format plugins.
52 
53     \ingroup plugins
54     \inmodule QtGui
55 
56     The picture format plugin is a simple plugin interface that makes
57     it easy to create custom picture formats that can be used
58     transparently by applications.
59 
60     Writing an picture format plugin is achieved by subclassing this
61     base class, reimplementing the pure virtual functions
62     loadPicture(), savePicture(), and installIOHandler(), and
63     exporting the class with the Q_PLUGIN_METADATA() macro.
64 
65     The json file containing the metadata should contain one entry
66     with the list of picture formats supported by the plugin:
67 
68     \code
69     { "Keys": [ "mypictureformat" ] }
70     \endcode
71 
72     \sa {How to Create Qt Plugins}
73 */
74 
75 /*!
76     \fn bool QPictureFormatPlugin::installIOHandler(const QString &format)
77 
78     Installs a QPictureIO picture I/O handler for the picture format \a
79     format. Returns \c true on success.
80 */
81 
82 
83 /*!
84     Constructs an picture format plugin with the given \a parent.
85     This is invoked automatically by the moc generated code that exports the plugin.
86 */
QPictureFormatPlugin(QObject * parent)87 QPictureFormatPlugin::QPictureFormatPlugin(QObject *parent)
88     : QObject(parent)
89 {
90 }
91 
92 /*!
93     Destroys the picture format plugin.
94 
95     You never have to call this explicitly. Qt destroys a plugin
96     automatically when it is no longer used.
97 */
~QPictureFormatPlugin()98 QPictureFormatPlugin::~QPictureFormatPlugin()
99 {
100 }
101 
102 
103 /*!
104     Loads the picture stored in the file called \a fileName, with the
105     given \a format, into *\a picture. Returns \c true on success;
106     otherwise returns \c false.
107 
108     \sa savePicture()
109 */
loadPicture(const QString & format,const QString & fileName,QPicture * picture)110 bool QPictureFormatPlugin::loadPicture(const QString &format, const QString &fileName, QPicture *picture)
111 {
112     Q_UNUSED(format)
113     Q_UNUSED(fileName)
114     Q_UNUSED(picture)
115     return false;
116 }
117 
118 /*!
119     Saves the given \a picture into the file called \a fileName,
120     using the specified \a format. Returns \c true on success; otherwise
121     returns \c false.
122 
123     \sa loadPicture()
124 */
savePicture(const QString & format,const QString & fileName,const QPicture & picture)125 bool QPictureFormatPlugin::savePicture(const QString &format, const QString &fileName, const QPicture &picture)
126 {
127     Q_UNUSED(format)
128     Q_UNUSED(fileName)
129     Q_UNUSED(picture)
130     return false;
131 }
132 
133 #endif // QT_NO_PICTURE
134 
135 QT_END_NAMESPACE
136