Libksieve

managesievescriptsdialog.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 "ksieveui/managesievewidget.h"
10#include "ksieveui_export.h"
11#include <QDialog>
12#include <memory>
13
14class QTreeWidgetItem;
15
16namespace KManageSieve
17{
18class SieveJob;
19}
20namespace KSieveCore
21{
22class SieveImapPasswordProvider;
23}
24namespace KSieveUi
25{
26class SieveEditor;
27class ManageSieveScriptsDialogPrivate;
28/**
29 * @brief The ManageSieveScriptsDialog class
30 * @author Laurent Montel <montel@kde.org>
31 */
32class KSIEVEUI_EXPORT ManageSieveScriptsDialog : public QDialog
33{
34 Q_OBJECT
35
36public:
37 explicit ManageSieveScriptsDialog(KSieveCore::SieveImapPasswordProvider *passwordProvider, QWidget *parent = nullptr);
39
40Q_SIGNALS:
41 void finished();
42
43protected:
44 void hideEvent(QHideEvent *) override;
45
46private:
47 KSIEVEUI_NO_EXPORT void slotGetResult(KManageSieve::SieveJob *, bool, const QString &, bool);
48 KSIEVEUI_NO_EXPORT void slotPutResult(KManageSieve::SieveJob *job, bool);
49
50 KSIEVEUI_NO_EXPORT void slotSieveEditorOkClicked();
51 KSIEVEUI_NO_EXPORT void slotSieveEditorCancelClicked();
52 KSIEVEUI_NO_EXPORT void slotSieveEditorCheckSyntaxClicked();
53 KSIEVEUI_NO_EXPORT void slotUpdateButtons(QTreeWidgetItem *item);
54 KSIEVEUI_NO_EXPORT void slotEditScript(const ManageSieveWidget::ScriptInfo &info);
55 KSIEVEUI_NO_EXPORT void slotNewScript(const ManageSieveWidget::ScriptInfo &info);
56 KSIEVEUI_NO_EXPORT void slotCheckScriptFinished(const QString &errorMsg, bool success);
57
58 KSIEVEUI_NO_EXPORT void updateButtons(QTreeWidgetItem *item);
59 KSIEVEUI_NO_EXPORT void disableManagerScriptsDialog(bool disable);
60
61private:
62 std::unique_ptr<ManageSieveScriptsDialogPrivate> const d;
63};
64}
A job to manage sieve scripts.
Definition sievejob.h:31
The SieveImapPasswordProvider class.
The ManageSieveScriptsDialog class.
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.