File indexing completed on 2024-05-19 05:29: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 <KPluginFactory> 0007 #include <KQuickConfigModule> 0008 0009 #include "CommandOutputContext.h" 0010 0011 class KCMInterrupts : public KQuickConfigModule 0012 { 0013 Q_OBJECT 0014 Q_PROPERTY(CommandOutputContext *infoOutputContext READ outputContext CONSTANT FINAL) 0015 public: 0016 explicit KCMInterrupts(QObject *parent, const KPluginMetaData &data) 0017 : KQuickConfigModule(parent, data) 0018 { 0019 m_outputContext = 0020 #if defined(Q_OS_FREEBSD) 0021 new CommandOutputContext(QStringLiteral("vmstat"), {QStringLiteral("-i")}, parent); 0022 #else 0023 new CommandOutputContext(QStringLiteral("cat"), {QStringLiteral("/proc/interrupts")}, parent); 0024 m_outputContext->setTrimAllowed(false); 0025 #endif 0026 } 0027 CommandOutputContext *outputContext() const 0028 { 0029 return m_outputContext; 0030 } 0031 0032 private: 0033 CommandOutputContext *m_outputContext; 0034 }; 0035 0036 K_PLUGIN_CLASS_WITH_JSON(KCMInterrupts, "kcm_interrupts.json") 0037 0038 #include "main.moc"