KPimTextEdit

richtextexternalcomposer.h
1/*
2 SPDX-FileCopyrightText: 2015-2024 Laurent Montel <montel@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6
7#pragma once
8
9#include "kpimtextedit_export.h"
10#include <QObject>
11#include <QProcess>
12#include <memory>
13
14namespace KPIMTextEdit
15{
16class RichTextComposer;
17/**
18 * @brief The RichTextExternalComposer class
19 * @author Laurent Montel <montel@kde.org>
20 */
21class KPIMTEXTEDIT_EXPORT RichTextExternalComposer : public QObject
22{
23 Q_OBJECT
24public:
25 explicit RichTextExternalComposer(RichTextComposer *composer, QObject *parent = nullptr);
27
28 [[nodiscard]] bool useExternalEditor() const;
29 void setUseExternalEditor(bool value);
30
31 void startExternalEditor();
32
33 void setExternalEditorPath(const QString &path);
34 [[nodiscard]] QString externalEditorPath() const;
35 [[nodiscard]] bool checkExternalEditorFinished();
36 void killExternalEditor();
37
38 [[nodiscard]] bool isInProgress() const;
39
40Q_SIGNALS:
41 void externalEditorClosed();
42 void externalEditorStarted();
43
44private:
45 KPIMTEXTEDIT_NO_EXPORT void slotEditorFinished(int codeError, QProcess::ExitStatus exitStatus);
46 class RichTextExternalComposerPrivate;
47 std::unique_ptr<RichTextExternalComposerPrivate> const d;
48};
49}
The RichTextComposer class.
The RichTextExternalComposer class.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:18:49 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.