File indexing completed on 2024-05-19 15:49:20

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 <QWidget>
0012 class QHBoxLayout;
0013 namespace TextGrammarCheck
0014 {
0015 class GrammarAction;
0016 class GrammarResultTextEdit;
0017 class TEXTGRAMMARCHECK_EXPORT GrammarResultWidget : public QWidget
0018 {
0019     Q_OBJECT
0020 public:
0021     explicit GrammarResultWidget(QWidget *parent = nullptr);
0022     ~GrammarResultWidget() override;
0023     void setText(const QString &str);
0024     virtual void checkGrammar() = 0;
0025     void applyGrammarResult(const QVector<TextGrammarCheck::GrammarError> &infos);
0026 Q_SIGNALS:
0027     void replaceText(const TextGrammarCheck::GrammarAction &act);
0028     void checkAgain();
0029     void closeChecker();
0030     void configure();
0031 
0032 protected:
0033     virtual void addExtraWidget();
0034     GrammarResultTextEdit *const mResult;
0035     QHBoxLayout *mExtraWidgetLayout = nullptr;
0036 
0037 private:
0038     Q_DISABLE_COPY(GrammarResultWidget)
0039 };
0040 }