]> git.lyx.org Git - lyx.git/blob - src/frontends/qt/GuiSpellchecker.h
237446d7b266b030dbdcc11ffbf40cb4a9fdc0cf
[lyx.git] / src / frontends / qt / GuiSpellchecker.h
1 // -*- C++ -*-
2 /**
3  * \file GuiSpellchecker.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author John Levon
8  * \author Kalle Dalheimer
9  * \author Edwin Leuven
10  * \author Abdelrazak Younes
11  *
12  * Full author contact details are available in file CREDITS.
13  */
14
15 #ifndef GUISPELLCHECKER_H
16 #define GUISPELLCHECKER_H
17
18 #include "DockView.h"
19 #include <QTabWidget>
20
21 class QListWidgetItem;
22
23 namespace lyx {
24
25 namespace frontend {
26
27 class SpellcheckerWidget : public QTabWidget
28 {
29         Q_OBJECT
30
31 public:
32         SpellcheckerWidget(GuiView * gv, DockView * dv, QWidget * parent = nullptr);
33         ~SpellcheckerWidget();
34         ///
35         void updateView();
36         ///
37         bool initialiseParams(std::string const &);
38
39 private Q_SLOTS:
40         void on_replaceAllPB_clicked();
41         void on_suggestionsLW_itemClicked(QListWidgetItem *);
42         void on_replaceCO_highlighted(const QString & str);
43         void on_languageCO_activated(int index);
44         void on_ignoreAllPB_clicked();
45         void on_addPB_clicked();
46         void on_ignorePB_clicked();
47         void on_replacePB_clicked();
48
49 private:
50         ///
51         bool eventFilter(QObject *obj, QEvent *event) override;
52         struct Private;
53         Private * const d;
54 };
55
56
57 class GuiSpellchecker : public DockView
58 {
59         Q_OBJECT
60
61 public:
62         GuiSpellchecker(
63                 GuiView & parent, ///< the main window where to dock.
64                 Qt::DockWidgetArea area = Qt::RightDockWidgetArea, ///< Position of the dock (and also drawer)
65                 Qt::WindowFlags flags = {});
66         ~GuiSpellchecker();
67
68 private:
69         ///{
70         void updateView() override;
71         bool initialiseParams(std::string const & sdata) override
72                 { return widget_->initialiseParams(sdata); }
73         void clearParams() override {}
74         void dispatchParams() override {}
75         bool isBufferDependent() const override { return false; }
76         ///}
77         /// The encapsulated widget.
78         SpellcheckerWidget * widget_;
79 };
80
81 } // namespace frontend
82 } // namespace lyx
83
84 #endif // GUISPELLCHECKER_H