From 0d07738ca9806d0dc5cc296dcfde243123fd6d2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= Date: Mon, 17 Mar 2014 19:12:56 +0100 Subject: [PATCH] [kwin] Fix genericscripted config * Use metadata as json * set Q_PLUGIN_METADATA and Q_INTERFACES * port away from kde4_add_plugin Only tested with effects, scripts might need further adjustements. REVIEW: 116862 --- scripting/CMakeLists.txt | 5 ++--- scripting/genericscriptedconfig.h | 4 +++- scripting/genericscriptedconfig.json | 7 +++++++ 3 files changed, 12 insertions(+), 4 deletions(-) create mode 100644 scripting/genericscriptedconfig.json diff --git a/scripting/CMakeLists.txt b/scripting/CMakeLists.txt index a1ef3f4bda..9ff53c35c3 100644 --- a/scripting/CMakeLists.txt +++ b/scripting/CMakeLists.txt @@ -1,10 +1,9 @@ set(kcm_kwin4_genericscripted_SRCS genericscriptedconfig.cpp) -kde4_add_plugin( kcm_kwin4_genericscripted ${kcm_kwin4_genericscripted_SRCS} ) +add_library(kcm_kwin4_genericscripted MODULE ${kcm_kwin4_genericscripted_SRCS}) target_link_libraries( kcm_kwin4_genericscripted KF5::ConfigWidgets #KCModule KF5::I18n KF5::Service - KF5::Plasma Qt5::DBus Qt5::UiTools ) -install( TARGETS kcm_kwin4_genericscripted DESTINATION ${PLUGIN_INSTALL_DIR} ) +install( TARGETS kcm_kwin4_genericscripted DESTINATION ${PLUGIN_INSTALL_DIR}/kwin/effects/configs ) diff --git a/scripting/genericscriptedconfig.h b/scripting/genericscriptedconfig.h index b73bf83711..47e3ba0f0a 100644 --- a/scripting/genericscriptedconfig.h +++ b/scripting/genericscriptedconfig.h @@ -30,11 +30,13 @@ namespace KWin class GenericScriptedConfigFactory : public KPluginFactory { Q_OBJECT + Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory" FILE "genericscriptedconfig.json" ) + Q_INTERFACES(KPluginFactory) public: GenericScriptedConfigFactory(); protected: - virtual QObject *create(const char *iface, QWidget *parentWidget, QObject *parent, const QVariantList &args, const QString &keyword); + QObject *create(const char *iface, QWidget *parentWidget, QObject *parent, const QVariantList &args, const QString &keyword) override; }; class GenericScriptedConfig : public KCModule diff --git a/scripting/genericscriptedconfig.json b/scripting/genericscriptedconfig.json new file mode 100644 index 0000000000..0d02730f8a --- /dev/null +++ b/scripting/genericscriptedconfig.json @@ -0,0 +1,7 @@ +{ + "Type": "Service", + "X-KDE-Library": "kcm_kwin4_genericscripted", + "X-KDE-ServiceTypes": [ + "KCModule" + ] +}