Plasma
7 #ifndef PLASMA_SERVICE_H
8 #define PLASMA_SERVICE_H
14 #include <KConfigGroup>
16 #include <plasma/plasma.h>
17 #include <plasma/plasma_export.h>
81 Q_PROPERTY(
QString destination READ destination WRITE setDestination)
82 Q_PROPERTY(
QStringList operationNames READ operationNames)
83 Q_PROPERTY(
QString name READ name)
97 Q_INVOKABLE
void setDestination(
const QString &destination);
102 Q_INVOKABLE
QString destination()
const;
115 Q_INVOKABLE QVariantMap operationDescription(
const QString &operationName);
124 Q_INVOKABLE
ServiceJob *startOperationCall(
const QVariantMap &description,
QObject *parent =
nullptr);
132 Q_INVOKABLE
bool isOperationEnabled(
const QString &operation)
const;
137 Q_INVOKABLE
QString name()
const;
148 void operationEnabledChanged(
const QString &operation,
bool enabled);
170 virtual ServiceJob *createJob(
const QString &operation, QVariantMap ¶meters) = 0;
178 virtual void registerOperationsScheme();
184 void setOperationsScheme(
QIODevice *xml);
192 void setName(
const QString &name);
200 void setOperationEnabled(
const QString &operation,
bool enable);
203 ServicePrivate *
const d;
205 friend class DataEnginePrivate;
215 #define K_EXPORT_PLASMA_SERVICE(libname, classname) K_PLUGIN_FACTORY(factory, registerPlugin<classname>();)
218 #define K_EXPORT_PLASMA_SERVICE_WITH_JSON(libname, classname, jsonFile) K_PLUGIN_FACTORY_WITH_JSON(factory, jsonFile, registerPlugin<classname>();)
220 #endif // multiple inclusion guard
Namespace for everything in libplasma.
This class provides jobs for use with Plasma::Service.
This class provides a generic API for write access to settings or services.
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Sun Feb 5 2023 04:14:15 by
doxygen 1.8.17 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.