summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt/tts.h
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/tts.h')
-rw-r--r--rbutil/rbutilqt/tts.h116
1 files changed, 116 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/tts.h b/rbutil/rbutilqt/tts.h
new file mode 100644
index 0000000000..83fcda35ac
--- /dev/null
+++ b/rbutil/rbutilqt/tts.h
@@ -0,0 +1,116 @@
1/***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 *
9 * Copyright (C) 2007 by Dominik Wenger
10 * $Id: tts.h 15212 2007-10-19 21:49:07Z domonoky $
11 *
12 * All files in this archive are subject to the GNU General Public License.
13 * See the file COPYING in the source tree root for full license agreement.
14 *
15 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
16 * KIND, either express or implied.
17 *
18 ****************************************************************************/
19
20
21#ifndef TTS_H
22#define TTS_H
23
24#include "ui_ttsexescfgfrm.h"
25#include "ui_sapicfgfrm.h"
26#include <QtGui>
27
28
29class TTSBase;
30
31//inits the tts List
32void initTTSList();
33// function to get a specific tts
34TTSBase* getTTS(QString ttsname);
35// get the list of tts, nice names
36QStringList getTTSList();
37
38
39class TTSBase : public QDialog
40{
41 Q_OBJECT
42public:
43 TTSBase(QWidget *parent );
44 virtual bool voice(QString text,QString wavfile) {return false;}
45 virtual bool start(){return false;}
46 virtual bool stop(){return false;}
47 virtual void showCfg(){}
48 virtual bool configOk(){return false;}
49
50 void setUserCfg(QSettings *uSettings){userSettings = uSettings;}
51
52public slots:
53 virtual void accept(void){}
54 virtual void reject(void){}
55 virtual void reset(void){}
56
57protected:
58 QSettings *userSettings;
59};
60
61class TTSSapi : public TTSBase
62{
63 Q_OBJECT
64public:
65 TTSSapi(QWidget *parent = NULL);
66 virtual bool voice(QString text,QString wavfile);
67 virtual bool start();
68 virtual bool stop();
69 virtual void showCfg();
70 virtual bool configOk();
71
72public slots:
73 virtual void accept(void);
74 virtual void reject(void);
75 virtual void reset(void);
76 void browse(void);
77
78private:
79 Ui::SapiCfgFrm ui;
80 QProcess* voicescript;
81
82 QString defaultLanguage;
83
84 QString m_TTSexec;
85 QString m_TTSOpts;
86 QString m_TTSTemplate;
87 QString m_TTSLanguage;
88};
89
90class TTSExes : public TTSBase
91{
92 Q_OBJECT
93public:
94 TTSExes(QString name,QWidget *parent = NULL);
95 virtual bool voice(QString text,QString wavfile);
96 virtual bool start();
97 virtual bool stop() {return true;}
98 virtual void showCfg();
99 virtual bool configOk();
100
101public slots:
102 virtual void accept(void);
103 virtual void reject(void);
104 virtual void reset(void);
105 void browse(void);
106
107private:
108 Ui::TTSExesCfgFrm ui;
109 QString m_name;
110 QString m_TTSexec;
111 QString m_TTSOpts;
112 QString m_TTSTemplate;
113 QMap<QString,QString> m_TemplateMap;
114};
115
116#endif