summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/widgets/styles/qstylefactory.cpp2
-rw-r--r--src/widgets/styles/qstyleplugin.cpp20
-rw-r--r--src/widgets/styles/qstyleplugin.h11
3 files changed, 10 insertions, 23 deletions
diff --git a/src/widgets/styles/qstylefactory.cpp b/src/widgets/styles/qstylefactory.cpp
index ec29ae7b99..479cc1aab9 100644
--- a/src/widgets/styles/qstylefactory.cpp
+++ b/src/widgets/styles/qstylefactory.cpp
@@ -182,7 +182,7 @@ QStyle *QStyleFactory::create(const QString& key)
{ } // Keep these here - they make the #ifdefery above work
#if !defined(QT_NO_LIBRARY) && !defined(QT_NO_SETTINGS)
if (!ret)
- ret = qLoadPlugin<QStyle, QStyleFactoryInterface>(loader(), style);
+ ret = qLoadPlugin<QStyle, QStylePlugin>(loader(), style);
#endif
if(ret)
ret->setObjectName(style);
diff --git a/src/widgets/styles/qstyleplugin.cpp b/src/widgets/styles/qstyleplugin.cpp
index b36ffcf181..be3ea3ca64 100644
--- a/src/widgets/styles/qstyleplugin.cpp
+++ b/src/widgets/styles/qstyleplugin.cpp
@@ -56,22 +56,18 @@ QT_BEGIN_NAMESPACE
applications using the QStyleFactory class.
Writing a style plugin is achieved by subclassing this base class,
- reimplementing the pure virtual keys() and create() functions, and
- exporting the class using the Q_EXPORT_PLUGIN2() macro. See \l
+ reimplementing the pure virtual create() function, and
+ exporting the class using the Q_PLUGIN_METADATA() macro. See \l
{How to Create Qt Plugins} for details.
- \sa QStyleFactory, QStyle
-*/
-
-/*!
- \fn QStringList QStylePlugin::keys() const
-
- Returns the list of style keys this plugin supports.
+ The json metadata file for the plugin needs to contain information
+ about the names of the styles the plugins supports as follows:
- These keys are usually the class names of the custom styles that
- are implemented in the plugin.
+ \code
+ { "Keys": [ "mystyle" ] }
+ \endcode
- \sa create()
+ \sa QStyleFactory, QStyle
*/
/*!
diff --git a/src/widgets/styles/qstyleplugin.h b/src/widgets/styles/qstyleplugin.h
index 883952eced..2393080aa7 100644
--- a/src/widgets/styles/qstyleplugin.h
+++ b/src/widgets/styles/qstyleplugin.h
@@ -52,24 +52,15 @@ QT_BEGIN_NAMESPACE
class QStyle;
-struct Q_WIDGETS_EXPORT QStyleFactoryInterface : public QFactoryInterface
-{
- virtual QStyle *create(const QString &key) = 0;
-};
-
#define QStyleFactoryInterface_iid "org.qt-project.Qt.QStyleFactoryInterface"
-Q_DECLARE_INTERFACE(QStyleFactoryInterface, QStyleFactoryInterface_iid)
-
-class Q_WIDGETS_EXPORT QStylePlugin : public QObject, public QStyleFactoryInterface
+class Q_WIDGETS_EXPORT QStylePlugin : public QObject
{
Q_OBJECT
- Q_INTERFACES(QStyleFactoryInterface:QFactoryInterface)
public:
explicit QStylePlugin(QObject *parent = 0);
~QStylePlugin();
- virtual QStringList keys() const = 0;
virtual QStyle *create(const QString &key) = 0;
};