1 /*
2     SPDX-FileCopyrightText: 2008 Pino Toscano <pino@kde.org>
3 
4     SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 
7 #ifndef _TTS_H_
8 #define _TTS_H_
9 
10 #include <QObject>
11 #include <QTextToSpeech>
12 
13 class OkularTTS : public QObject
14 {
15     Q_OBJECT
16 public:
17     explicit OkularTTS(QObject *parent = nullptr);
18     ~OkularTTS() override;
19 
20     void say(const QString &text);
21     void stopAllSpeechs();
22     void pauseResumeSpeech();
23 
24 public slots:
25     void slotSpeechStateChanged(QTextToSpeech::State state);
26     void slotConfigChanged();
27 
28 signals:
29     void isSpeaking(bool speaking);
30     void canPauseOrResume(bool speakingOrPaused);
31 
32 private:
33     // private storage
34     class Private;
35     Private *d;
36 };
37 
38 #endif
39