File indexing completed on 2024-04-28 05:10:45
0001 /* 0002 SPDX-FileCopyrightText: 2020-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "akregator_config_userfeedback.h" 0008 #include <KAboutData> 0009 #include <KLocalizedString> 0010 #include <KPluginFactory> 0011 #include <QHBoxLayout> 0012 #ifdef WITH_KUSERFEEDBACK 0013 #include "userfeedback/userfeedbackmanager.h" 0014 #include <KUserFeedback/FeedbackConfigWidget> 0015 #endif 0016 0017 using namespace Akregator; 0018 0019 K_PLUGIN_CLASS_WITH_JSON(KCMAkregatorUserFeedBackConfig, "akregator_config_userfeedback.json") 0020 KCMAkregatorUserFeedBackConfig::KCMAkregatorUserFeedBackConfig(QObject *parent, const KPluginMetaData &data) 0021 : KCModule(parent, data) 0022 { 0023 auto lay = new QHBoxLayout(widget()); 0024 lay->setContentsMargins({}); 0025 0026 mUserFeedbackWidget = new KUserFeedback::FeedbackConfigWidget(widget()); 0027 connect(mUserFeedbackWidget, &KUserFeedback::FeedbackConfigWidget::configurationChanged, this, &KCMAkregatorUserFeedBackConfig::markAsChanged); 0028 0029 lay->addWidget(mUserFeedbackWidget); 0030 mUserFeedbackWidget->setFeedbackProvider(Akregator::UserFeedBackManager::self()->userFeedbackProvider()); 0031 } 0032 0033 void KCMAkregatorUserFeedBackConfig::save() 0034 { 0035 Akregator::UserFeedBackManager::self()->userFeedbackProvider()->setTelemetryMode(mUserFeedbackWidget->telemetryMode()); 0036 Akregator::UserFeedBackManager::self()->userFeedbackProvider()->setSurveyInterval(mUserFeedbackWidget->surveyInterval()); 0037 } 0038 0039 void KCMAkregatorUserFeedBackConfig::load() 0040 { 0041 mUserFeedbackWidget->setFeedbackProvider(Akregator::UserFeedBackManager::self()->userFeedbackProvider()); 0042 } 0043 0044 void KCMAkregatorUserFeedBackConfig::defaults() 0045 { 0046 // TODO fixme default values 0047 mUserFeedbackWidget->setFeedbackProvider(Akregator::UserFeedBackManager::self()->userFeedbackProvider()); 0048 } 0049 0050 #include "akregator_config_userfeedback.moc" 0051 0052 #include "moc_akregator_config_userfeedback.cpp"