File indexing completed on 2024-04-28 05:10:44

0001 /*
0002    SPDX-FileCopyrightText: 2016-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "akregator_config_plugins.h"
0008 #include "akregatorconfig.h"
0009 #include "akregatorconfigurepluginlistwidget.h"
0010 #include <KAboutData>
0011 #include <KLocalizedString>
0012 #include <KPluginFactory>
0013 #include <PimCommon/ConfigurePluginsListWidget>
0014 #include <PimCommon/ConfigurePluginsWidget>
0015 #include <QHBoxLayout>
0016 using namespace Akregator;
0017 
0018 K_PLUGIN_CLASS_WITH_JSON(KCMAkregatorPluginsConfig, "akregator_config_plugins.json")
0019 KCMAkregatorPluginsConfig::KCMAkregatorPluginsConfig(QObject *parent, const KPluginMetaData &data)
0020     : KCModule(parent, data)
0021 {
0022     auto lay = new QHBoxLayout(widget());
0023     lay->setContentsMargins({});
0024     mConfigurePluginWidget = new PimCommon::ConfigurePluginsWidget(new AkregatorConfigurePluginListWidget(widget()), widget());
0025     mConfigurePluginWidget->setObjectName(QLatin1StringView("configurePluginWidget"));
0026     connect(mConfigurePluginWidget, &PimCommon::ConfigurePluginsWidget::changed, this, &KCMAkregatorPluginsConfig::slotConfigChanged);
0027     lay->addWidget(mConfigurePluginWidget);
0028 }
0029 
0030 void KCMAkregatorPluginsConfig::slotConfigChanged()
0031 {
0032     markAsChanged();
0033 }
0034 
0035 void KCMAkregatorPluginsConfig::save()
0036 {
0037     mConfigurePluginWidget->save();
0038 }
0039 
0040 void KCMAkregatorPluginsConfig::load()
0041 {
0042     mConfigurePluginWidget->doLoadFromGlobalSettings();
0043 }
0044 
0045 void KCMAkregatorPluginsConfig::defaults()
0046 {
0047     mConfigurePluginWidget->doResetToDefaultsOther();
0048 }
0049 
0050 #include "akregator_config_plugins.moc"
0051 
0052 #include "moc_akregator_config_plugins.cpp"