1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
|
/*
SPDX-FileCopyrightText: 2013-2025 Laurent Montel <montel@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
#pragma once
#include "textcustomeditor_export.h"
#include <QWidget>
namespace TextCustomEditor
{
class PlainTextEditor;
class PlainTextEditorWidgetPrivate;
/**
* @brief The PlainTextEditorWidget class
* @author Laurent Montel <montel@kde.org>
*/
class TEXTCUSTOMEDITOR_EXPORT PlainTextEditorWidget : public QWidget
{
Q_OBJECT
Q_PROPERTY(bool readOnly READ isReadOnly WRITE setReadOnly)
public:
explicit PlainTextEditorWidget(QWidget *parent = nullptr);
explicit PlainTextEditorWidget(PlainTextEditor *customEditor, QWidget *parent = nullptr);
~PlainTextEditorWidget() override;
[[nodiscard]] PlainTextEditor *editor() const;
void setReadOnly(bool readOnly);
[[nodiscard]] bool isReadOnly() const;
void setPlainText(const QString &text);
[[nodiscard]] QString toPlainText() const;
void clear();
void setSpellCheckingConfigFileName(const QString &_fileName);
[[nodiscard]] bool isEmpty() const;
private:
TEXTCUSTOMEDITOR_NO_EXPORT void slotFind();
TEXTCUSTOMEDITOR_NO_EXPORT void slotReplace();
TEXTCUSTOMEDITOR_NO_EXPORT void slotHideFindBar();
TEXTCUSTOMEDITOR_NO_EXPORT void init(PlainTextEditor *customEditor = nullptr);
std::unique_ptr<PlainTextEditorWidgetPrivate> const d;
};
}
|