File indexing completed on 2025-02-16 04:56:03

0001 /*
0002    SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 #pragma once
0007 
0008 #include "ksieveui_private_export.h"
0009 #include <KMessageWidget>
0010 namespace KSieveUi
0011 {
0012 class KSIEVEUI_TESTS_EXPORT SieveEditorParsingMissingFeatureWarning : public KMessageWidget
0013 {
0014     Q_OBJECT
0015 public:
0016     enum TextEditorType { TextEditor, GraphicEditor };
0017 
0018     explicit SieveEditorParsingMissingFeatureWarning(SieveEditorParsingMissingFeatureWarning::TextEditorType type, QWidget *parent = nullptr);
0019     ~SieveEditorParsingMissingFeatureWarning() override;
0020 
0021     void setErrors(const QString &initialScript, const QString &errors);
0022     [[nodiscard]] QString initialScript() const;
0023 
0024 Q_SIGNALS:
0025     void switchToGraphicalMode();
0026     void switchToTextMode();
0027 
0028 private:
0029     void slotSwitchInGraphicalMode();
0030     void slotSwitchInTextMode();
0031     void slotInActualMode();
0032     void slotShowDetails(const QString &content);
0033     QString mErrors;
0034     QString mScript;
0035 };
0036 }