File indexing completed on 2024-04-14 15:42:35

0001 /*
0002     SPDX-FileCopyrightText: 2006 Aaron Seigo <aseigo@kde.org>
0003     SPDX-FileCopyrightText: 2021 Alexander Lohnau <alexander.lohnau@gmx.de>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-only
0006 */
0007 
0008 #ifndef SYSTEMSETTINGSRUNNER_H
0009 #define SYSTEMSETTINGSRUNNER_H
0010 
0011 #include <KRunner/AbstractRunner>
0012 #include <QMutex>
0013 
0014 class SystemsettingsRunner : public Plasma::AbstractRunner
0015 {
0016     Q_OBJECT
0017 
0018 public:
0019     SystemsettingsRunner(QObject *parent, const KPluginMetaData &metaData, const QVariantList &args);
0020 
0021     void match(Plasma::RunnerContext &context) override;
0022     void run(const Plasma::RunnerContext &context, const Plasma::QueryMatch &match) override;
0023 
0024 protected Q_SLOTS:
0025     QMimeData *mimeDataForMatch(const Plasma::QueryMatch &match) override;
0026 
0027 private:
0028     void setupMatch(const KPluginMetaData &data, Plasma::QueryMatch &match);
0029     void matchNameKeyword(Plasma::RunnerContext &ctx);
0030     QMutex m_mutex;
0031     QList<KPluginMetaData> m_modules;
0032 };
0033 
0034 #endif