File indexing completed on 2024-05-12 16:16:00
0001 /* 0002 SPDX-FileCopyrightText: 2019-2023 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "grammarerror.h" 0010 #include "textgrammarcheck_export.h" 0011 #include <QTextEdit> 0012 namespace TextGrammarCheck 0013 { 0014 class GrammarAction; 0015 class TEXTGRAMMARCHECK_EXPORT GrammarResultTextEdit : public QTextEdit 0016 { 0017 Q_OBJECT 0018 public: 0019 explicit GrammarResultTextEdit(QWidget *parent = nullptr); 0020 ~GrammarResultTextEdit() override; 0021 0022 void applyGrammarResult(const QVector<GrammarError> &infos); 0023 0024 protected: 0025 void contextMenuEvent(QContextMenuEvent *event) override; 0026 0027 void paintEvent(QPaintEvent *event) override; 0028 0029 bool event(QEvent *ev) override; 0030 Q_SIGNALS: 0031 void replaceText(const TextGrammarCheck::GrammarAction &act); 0032 void checkAgain(); 0033 void closeChecker(); 0034 void configure(); 0035 0036 private: 0037 Q_DISABLE_COPY(GrammarResultTextEdit) 0038 TEXTGRAMMARCHECK_NO_EXPORT void slotReplaceWord(const TextGrammarCheck::GrammarAction &act, const QString &replacementWord); 0039 TEXTGRAMMARCHECK_NO_EXPORT void slotOpenGrammarUrlInfo(const QString &url); 0040 TEXTGRAMMARCHECK_NO_EXPORT void generalPaletteChanged(); 0041 QColor mTextColor; 0042 QColor mNegativeTextColor; 0043 }; 0044 }