~neon/kmouth/master

1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
1
/***************************************************************************
486.1.3 by Jeremy Whiting
Updated copyright headers and add missing ones.
2
 *   Copyright (C) 2002 by Gunnar Schmi Dt <kmouth@schmi-dt.de             *
3
 *             (C) 2015 by Jeremy Whiting <jpwhiting@kde.org>              *
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
4
 *                                                                         *
5
 *   This program is free software; you can redistribute it and/or modify  *
6
 *   it under the terms of the GNU General Public License as published by  *
7
 *   the Free Software Foundation; either version 2 of the License, or     *
8
 *   (at your option) any later version.                                   *
9
 *                                                                         *
486.1.3 by Jeremy Whiting
Updated copyright headers and add missing ones.
10
 *   This program is distributed in the hope that it will be useful,       *
11
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
12
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
13
 *   GNU General Public License for more details.                          *
14
 *                                                                         *
15
 *   You should have received a copy of the GNU General Public License     *
16
 *   along with this program; if not, write to the                         *
17
 *   Free Software Foundation, Inc.,                                       *
18
 *   51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.          *
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
19
 ***************************************************************************/
20
21
#ifndef OPTIONSDIALOG_H
22
#define OPTIONSDIALOG_H
23
489 by Jeremy Whiting
Cleanup headers and bump version to 1.2.0
24
#include <KPageDialog>
361 by Arto Hytönen
QtModule/QClass fixes
25
246 by Gary Cramblitt
ui v3 to 4
26
#include "ui_preferencesui.h"
27
498 by Jeremy Whiting
Port from KTabWidget to QTabWidget.
28
class QTabWidget;
489 by Jeremy Whiting
Cleanup headers and bump version to 1.2.0
29
class TextToSpeechSystem;
30
class TextToSpeechConfigurationWidget;
55 by Gunnar Schmidt
Made the word completion configurable
31
class WordCompletionWidget;
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
32
33
/**This class represents a configuration widget for user preferences.
804 by Nicolas Fella
Add and make use of ECM clang-format integration
34
 *@author Gunnar Schmi Dt
35
 */
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
36
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
37
class PreferencesWidget : public QWidget, public Ui::PreferencesUI
38
{
39
    Q_OBJECT
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
40
public:
561 by Laurent Montel
Use explicit and co
41
    explicit PreferencesWidget(QWidget *parent, const QString &name);
654 by Laurent Montel
GIT_SILENT: add missing override keyword
42
    ~PreferencesWidget() override;
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
43
495 by Jeremy Whiting
Port from KConfig to KSharedConfig.
44
    void readOptions();
45
    void saveOptions();
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
46
47
    void ok();
48
    void cancel();
49
50
    bool isSpeakImmediately();
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
51
52
private:
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
53
    bool speak;
54
    int save;
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
55
};
56
57
/**This class represents a configuration dialog for the options of KMouth.
804 by Nicolas Fella
Add and make use of ECM clang-format integration
58
 *@author Gunnar Schmi Dt
59
 */
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
60
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
61
class OptionsDialog : public KPageDialog
62
{
63
    Q_OBJECT
64
public:
672 by Jeremy Whiting
Fix some clang-tidy warnings.
65
    explicit OptionsDialog(QWidget *parent);
654 by Laurent Montel
GIT_SILENT: add missing override keyword
66
    ~OptionsDialog() override;
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
67
68
    TextToSpeechSystem *getTTSSystem() const;
69
495 by Jeremy Whiting
Port from KConfig to KSharedConfig.
70
    void readOptions();
71
    void saveOptions();
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
72
73
    bool isSpeakImmediately();
251 by Gary Cramblitt
Fix crash in settings.
74
560 by Laurent Montel
Fix compile with KDEFrameworkCompilerSettings
75
Q_SIGNALS:
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
76
    void configurationChanged();
77
560 by Laurent Montel
Fix compile with KDEFrameworkCompilerSettings
78
private Q_SLOTS:
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
79
    void slotCancel();
80
    void slotOk();
81
    void slotApply();
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
82
83
private:
498 by Jeremy Whiting
Port from KTabWidget to QTabWidget.
84
    QTabWidget *tabCtl;
484.1.19 by Jeremy Whiting
Restyle with astyle as per kdelibs coding style.
85
    TextToSpeechConfigurationWidget *commandWidget;
86
    PreferencesWidget *behaviourWidget;
87
    WordCompletionWidget *completionWidget;
1 by Gunnar Schmidt
Imported KMouth into kdeaccessibility
88
};
89
90
#endif