1 /* 2 SPDX-FileCopyrightText: 2012-2021 Laurent Montel <montel@kde.org> 3 4 SPDX-License-Identifier: GPL-2.0-or-later 5 */ 6 7 #pragma once 8 9 #include "abstractbase.h" 10 #include "libimportwizard_export.h" 11 #include <KSharedConfig> 12 #include <QMap> 13 14 namespace KIdentityManagement 15 { 16 class Identity; 17 class IdentityManager; 18 } 19 20 namespace MailTransport 21 { 22 class Transport; 23 } 24 25 class LIBIMPORTWIZARD_EXPORT AbstractSettings : public LibImportWizard::AbstractBase 26 { 27 Q_OBJECT 28 public: 29 AbstractSettings(); 30 ~AbstractSettings() override; 31 32 protected: 33 void addImportInfo(const QString &log) override; 34 void addImportError(const QString &log) override; 35 36 void syncKmailConfig(); 37 38 QString uniqueIdentityName(const QString &name); 39 40 QString createResource(const QString &resources, const QString &name, const QMap<QString, QVariant> &settings); 41 42 KIdentityManagement::Identity *createIdentity(QString &name); 43 44 MailTransport::Transport *createTransport(); 45 46 void storeTransport(MailTransport::Transport *mt, bool isDefault = false); 47 48 void storeIdentity(KIdentityManagement::Identity *identity); 49 50 void addKmailConfig(const QString &groupName, const QString &key, const QString &value); 51 void addKmailConfig(const QString &groupName, const QString &key, bool value); 52 void addKmailConfig(const QString &groupName, const QString &key, int value); 53 54 void addComposerHeaderGroup(const QString &groupName, const QString &name, const QString &value); 55 56 void addCheckMailOnStartup(const QString &agentIdentifyName, bool loginAtStartup); 57 void addToManualCheck(const QString &agentIdentifyName, bool manualCheck); 58 int readKmailSettings(const QString &groupName, const QString &key); 59 60 KIdentityManagement::IdentityManager *mManager = nullptr; 61 KSharedConfigPtr mKmailConfig; 62 }; 63 64