Libksieve

sievedebugdialog.h
1/*
2 sievedebugdialog.h
3
4 SPDX-FileCopyrightText: 2005 Martijn Klingens <klingens@kde.org>
5
6 SPDX-License-Identifier: GPL-2.0-only
7*/
8
9#pragma once
10
11#include "ksieveui_export.h"
12#include <KSieveCore/Util>
13
14#include <KSyntaxHighlighting/Repository>
15#include <QDialog>
16#include <QUrl>
17
18#include <QStringList>
19
20namespace KManageSieve
21{
22class SieveJob;
23}
24namespace TextCustomEditor
25{
26class PlainTextEditorWidget;
27}
28namespace KSieveCore
29{
30class SieveImapPasswordProvider;
31}
32namespace KSieveUi
33{
34/**
35 * Diagnostic info for Sieve. Only compiled when debug is enabled, it is
36 * not useful enough for non-developers to have this in releases.
37 */
38class KSIEVEUI_EXPORT SieveDebugDialog : public QDialog
39{
40 Q_OBJECT
41public:
42 explicit SieveDebugDialog(KSieveCore::SieveImapPasswordProvider *passwordProvider, QWidget *parent = nullptr);
43 ~SieveDebugDialog() override;
44
45private Q_SLOTS:
46 KSIEVEUI_NO_EXPORT void slotGetScript(KManageSieve::SieveJob *job, bool success, const QString &script, bool active);
47 KSIEVEUI_NO_EXPORT void slotGetScriptList(KManageSieve::SieveJob *job, bool success, const QStringList &scriptList, const QString &activeScript);
48
49 KSIEVEUI_NO_EXPORT void slotDiagNextAccount();
50 KSIEVEUI_NO_EXPORT void slotDiagNextScript();
51
52 KSIEVEUI_NO_EXPORT void slotShutDownJob();
53
54private:
55 KSIEVEUI_NO_EXPORT void slotFindAccountInfoFinished(const KSieveCore::Util::AccountInfo &info);
56 KSIEVEUI_NO_EXPORT void slotFindAccountInfoForScriptFinished(const KSieveCore::Util::AccountInfo &info);
57 KSIEVEUI_NO_EXPORT void writeConfig();
58 KSIEVEUI_NO_EXPORT void readConfig();
59 KManageSieve::SieveJob *mSieveJob = nullptr;
60 QUrl mUrl;
62
63 KSieveCore::SieveImapPasswordProvider *const mPasswordProvider;
64 TextCustomEditor::PlainTextEditorWidget *mEdit = nullptr;
65 QStringList mResourceIdentifier;
66 QStringList mScriptList;
67 QTimer *mShutDownJob = nullptr;
68};
69}
A job to manage sieve scripts.
Definition sievejob.h:31
The SieveImapPasswordProvider class.
Diagnostic info for Sieve.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:17:19 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.