File indexing completed on 2024-05-05 05:00:09

0001 /*
0002     SPDX-FileCopyrightText: 2003 Lubos Lunak <l.lunak@kde.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 // Own
0008 #include "kcmperformance.h"
0009 
0010 // Qt
0011 #include <QTabWidget>
0012 
0013 // KDE
0014 #include <KLocalizedString>
0015 // Local
0016 #include "konqueror.h"
0017 #include "system.h"
0018 #include <KPluginFactory>
0019 
0020 K_PLUGIN_FACTORY_WITH_JSON(KCMPerformanceConfigFactory, "kcmperformance.json", registerPlugin<KCMPerformance::KonquerorConfig>();)
0021 
0022 namespace KCMPerformance
0023 {
0024 
0025 Config::Config(QObject *parent, const KPluginMetaData &md, const QVariantList &)
0026     : KCModule(parent, md)
0027 {
0028     QVBoxLayout *topLayout = new QVBoxLayout(widget());
0029     QTabWidget *tabs = new QTabWidget(widget());
0030     konqueror_widget = new Konqueror;
0031 #if QT_VERSION_MAJOR < 6
0032     connect(konqueror_widget, &Konqueror::changed, this, &Config::markAsChanged);
0033 #else
0034     connect(konqueror_widget, &Konqueror::changed, this, [this](){setNeedsSave(true);});
0035 #endif
0036     tabs->addTab(konqueror_widget, i18n("Konqueror"));
0037     system_widget = new SystemWidget;
0038 #if QT_VERSION_MAJOR < 6
0039     connect(system_widget, &SystemWidget::changed, this, &Config::markAsChanged);
0040 #else
0041     connect(system_widget, &SystemWidget::changed, this, [this](){setNeedsSave(true);});
0042 #endif
0043     tabs->addTab(system_widget, i18n("System"));
0044     topLayout->addWidget(tabs);
0045 }
0046 
0047 void Config::load()
0048 {
0049     konqueror_widget->load();
0050     system_widget->load();
0051     KCModule::load();
0052 }
0053 
0054 void Config::save()
0055 {
0056     konqueror_widget->save();
0057     system_widget->save();
0058     KCModule::save();
0059 }
0060 
0061 void Config::defaults()
0062 {
0063     konqueror_widget->defaults();
0064     system_widget->defaults();
0065 #if QT_VERSION_MAJOR > 5
0066     setRepresentsDefaults(true);
0067 #endif
0068 }
0069 
0070 KonquerorConfig::KonquerorConfig(QObject *parent, const KPluginMetaData &md, const QVariantList &)
0071     : KCModule(parent, md)
0072 {
0073     QVBoxLayout *topLayout = new QVBoxLayout(widget());
0074     topLayout->setContentsMargins(0, 0, 0, 0);
0075     m_widget = new Konqueror(widget());
0076 #if QT_VERSION_MAJOR < 6
0077     connect(m_widget, &Konqueror::changed, this, &KonquerorConfig::markAsChanged);
0078 #else
0079     connect(m_widget, &Konqueror::changed, this, [this](){setNeedsSave(true);});
0080 #endif
0081     topLayout->addWidget(m_widget);
0082 }
0083 
0084 void KonquerorConfig::load()
0085 {
0086     m_widget->load();
0087     KCModule::load();
0088 }
0089 
0090 void KonquerorConfig::save()
0091 {
0092     m_widget->save();
0093     KCModule::load();
0094 }
0095 
0096 void KonquerorConfig::defaults()
0097 {
0098     m_widget->defaults();
0099 #if QT_VERSION_MAJOR > 5
0100     setRepresentsDefaults(true);
0101 #endif
0102 }
0103 
0104 } // namespace
0105 
0106 #include "kcmperformance.moc"