File indexing completed on 2024-05-19 16:31:58
0001 /* 0002 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0003 SPDX-FileCopyrightText: 2021 Harald Sitter <sitter@kde.org> 0004 */ 0005 0006 #include <KAboutData> 0007 #include <KLocalizedString> 0008 #include <KPluginFactory> 0009 #include <KQuickAddons/ConfigModule> 0010 0011 #include <CommandOutputContext.h> 0012 0013 class KCMInterrupts : public KQuickAddons::ConfigModule 0014 { 0015 Q_OBJECT 0016 public: 0017 explicit KCMInterrupts(QObject *parent, const KPluginMetaData &data, const QVariantList &args) 0018 : ConfigModule(parent, data, args) 0019 { 0020 auto outputContext = 0021 #if defined(Q_OS_FREEBSD) 0022 new CommandOutputContext(QStringLiteral("vmstat"), {QStringLiteral("-i")}, parent); 0023 #else 0024 new CommandOutputContext(QStringLiteral("cat"), {QStringLiteral("/proc/interrupts")}, parent); 0025 #endif 0026 qmlRegisterSingletonInstance("org.kde.kinfocenter.interrupts.private", 1, 0, "InfoOutputContext", outputContext); 0027 0028 auto *about = new KAboutData(QStringLiteral("kcm_interrupts"), i18nc("@label kcm name", "Interrupts"), QStringLiteral("1.0"), QString(), KAboutLicense::GPL); 0029 about->addAuthor(i18n("Harald Sitter"), QString(), QStringLiteral("sitter@kde.org")); 0030 setAboutData(about); 0031 } 0032 }; 0033 0034 K_PLUGIN_CLASS_WITH_JSON(KCMInterrupts, "kcm_interrupts.json") 0035 0036 #include "main.moc"