File indexing completed on 2024-06-02 05:21:47
0001 /* 0002 SPDX-FileCopyrightText: 2018 Daniel Vrátil <dvratil@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #include <Akonadi/AgentConfigurationBase> 0008 0009 #include "accountwidget.h" 0010 #include "settings.h" 0011 0012 class Pop3Config : public Akonadi::AgentConfigurationBase 0013 { 0014 Q_OBJECT 0015 public: 0016 Pop3Config(const KSharedConfigPtr &config, QWidget *parent, const QVariantList &args) 0017 : Akonadi::AgentConfigurationBase(config, parent, args) 0018 , mSettings(config, Settings::Option::NoOption) 0019 , mWidget(mSettings, identifier(), parent) 0020 { 0021 connect(&mWidget, &AccountWidget::okEnabled, this, &Akonadi::AgentConfigurationBase::enableOkButton); 0022 } 0023 0024 void load() override 0025 { 0026 Akonadi::AgentConfigurationBase::load(); 0027 mWidget.loadSettings(); 0028 } 0029 0030 [[nodiscard]] bool save() const override 0031 { 0032 const_cast<Pop3Config *>(this)->mWidget.saveSettings(); 0033 return Akonadi::AgentConfigurationBase::save(); 0034 } 0035 0036 Settings mSettings; 0037 AccountWidget mWidget; 0038 }; 0039 0040 AKONADI_AGENTCONFIG_FACTORY(Pop3ConfigFactory, "pop3config.json", Pop3Config) 0041 0042 #include "pop3config.moc"