Libksieve

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

KDE's Doxygen guidelines are available online.