KWin
Loading...
Searching...
No Matches
genericscriptedconfig.h
Go to the documentation of this file.
1/*
2 KWin - the KDE window manager
3 This file is part of the KDE project.
4
5 SPDX-FileCopyrightText: 2013 Martin Gräßlin <mgraesslin@kde.org>
6
7 SPDX-License-Identifier: GPL-2.0-or-later
8*/
9
10#pragma once
11
12#include <KCModule>
13#include <KConfigGroup>
14#include <KPluginFactory>
15
16class KLocalizedTranslator;
17
18namespace KWin
19{
20
21class GenericScriptedConfigFactory : public KPluginFactory
22{
23 Q_OBJECT
24 Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory" FILE "genericscriptedconfig.json")
25 Q_INTERFACES(KPluginFactory)
26
27protected:
28 QObject *create(const char *iface, QWidget *parentWidget, QObject *parent, const QVariantList &args) override;
29};
30
31class GenericScriptedConfig : public KCModule
32{
33 Q_OBJECT
34
35public:
36 GenericScriptedConfig(const QString &keyword, QWidget *parent, const QVariantList &args);
37 ~GenericScriptedConfig() override;
38
39public Q_SLOTS:
40 void save() override;
41
42protected:
43 const QString &packageName() const;
44 void createUi();
45 virtual QString typeName() const = 0;
46 virtual KConfigGroup configGroup() = 0;
47 virtual void reload();
48
49private:
50 QString m_packageName;
51 KLocalizedTranslator *m_translator;
52};
53
55{
56 Q_OBJECT
57public:
58 ScriptedEffectConfig(const QString &keyword, QWidget *parent, const QVariantList &args);
59 ~ScriptedEffectConfig() override;
60
61protected:
62 QString typeName() const override;
63 KConfigGroup configGroup() override;
64 void reload() override;
65};
66
68{
69 Q_OBJECT
70public:
71 ScriptingConfig(const QString &keyword, QWidget *parent, const QVariantList &args);
72 ~ScriptingConfig() override;
73
74protected:
75 QString typeName() const override;
76 KConfigGroup configGroup() override;
77 void reload() override;
78};
79
80inline const QString &GenericScriptedConfig::packageName() const
81{
82 return m_packageName;
83}
84
85}
QObject * create(const char *iface, QWidget *parentWidget, QObject *parent, const QVariantList &args) override
virtual QString typeName() const =0
virtual KConfigGroup configGroup()=0
const QString & packageName() const
GenericScriptedConfig(const QString &keyword, QWidget *parent, const QVariantList &args)
ScriptedEffectConfig(const QString &keyword, QWidget *parent, const QVariantList &args)
KConfigGroup configGroup() override
QString typeName() const override
KConfigGroup configGroup() override
ScriptingConfig(const QString &keyword, QWidget *parent, const QVariantList &args)
QString typeName() const override