File indexing completed on 2024-05-12 05:25:39
0001 /* 0002 SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "sieveeditorutil.h" 0010 #include <QDialog> 0011 class ServerSieveSettings; 0012 class QPushButton; 0013 class ServerSieveSettingsDialog : public QDialog 0014 { 0015 Q_OBJECT 0016 public: 0017 explicit ServerSieveSettingsDialog(QWidget *parent = nullptr); 0018 ~ServerSieveSettingsDialog() override; 0019 0020 [[nodiscard]] QString serverName() const; 0021 void setServerName(const QString &name); 0022 0023 [[nodiscard]] int port() const; 0024 void setPort(int value); 0025 0026 [[nodiscard]] QString userName() const; 0027 void setUserName(const QString &name); 0028 0029 [[nodiscard]] QString password() const; 0030 void setPassword(const QString &pass); 0031 0032 void setServerSieveConfig(const SieveEditorUtil::SieveServerConfig &conf); 0033 [[nodiscard]] SieveEditorUtil::SieveServerConfig serverSieveConfig() const; 0034 0035 private: 0036 void slotEnableButtonOk(bool); 0037 void readConfig(); 0038 void writeConfig(); 0039 ServerSieveSettings *mServerSieveSettings = nullptr; 0040 QPushButton *mOkButton = nullptr; 0041 };