Libksieve

custommanagesievewidget.h
1/*
2 SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org>
3
4 SPDX-License-Identifier: GPL-2.0-only
5*/
6
7#pragma once
8
9#include "widgets/managesievewidget.h"
10#include <KSieveCore/SieveImapInstance>
11#include <KSieveCore/Util>
12namespace KSieveCore
13{
14class SieveImapPasswordProvider;
15}
16namespace KSieveUi
17{
18class SieveTreeWidgetItem;
19class CustomManageSieveWidget : public KSieveUi::ManageSieveWidget
20{
22public:
23 explicit CustomManageSieveWidget(KSieveCore::SieveImapPasswordProvider *passwordProvider, QWidget *parent = nullptr);
24 ~CustomManageSieveWidget() override;
25
26protected:
27 [[nodiscard]] bool refreshList() override;
28 void updateSieveSettings() override;
29
30private:
31 void searchNextServerSieve();
32 void searchSieveScript();
33 void slotSearchSieveScript(const QString &name, const QString &identifier);
34 void slotFindAccountInfoFinished(const KSieveCore::Util::AccountInfo &info);
35 QList<KSieveCore::SieveImapInstance> mSieveImapInstances;
36 QMap<QString, QString>::const_iterator mSieveServerMapIterator;
37 // name, identifier
38 QMap<QString, QString> mServerSieveInfos;
39 KSieveCore::SieveImapPasswordProvider *const mPasswordProvider;
40 SieveTreeWidgetItem *mLastSieveTreeWidgetItem = nullptr;
41 bool mRefreshInProgress = false;
42};
43}
The SieveImapPasswordProvider class.
The ManageSieveWidget class.
Q_OBJECTQ_OBJECT
QObject * parent() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sat Dec 21 2024 16:57:10 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.