Fix advanced EQ menu
[maemo-rb.git] / rbutil / rbutilqt / base / ttssapi.h
blobf645774852f9cc1253fdcafaa9937778f790e5ad
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
9 * Copyright (C) 2009 by Dominik Wenger
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version 2
14 * of the License, or (at your option) any later version.
16 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
17 * KIND, either express or implied.
19 ****************************************************************************/
21 #ifndef TTSSAPI_H
22 #define TTSSAPI_H
24 #include "ttsbase.h"
26 class TTSSapi : public TTSBase
28 //! Enum to identify the settings
29 enum ESettings
31 eLANGUAGE,
32 eVOICE,
33 eSPEED,
34 eOPTIONS
37 Q_OBJECT
38 public:
39 TTSSapi(QObject* parent=NULL);
41 TTSStatus voice(QString text,QString wavfile, QString *errStr);
42 bool start(QString *errStr);
43 bool stop();
44 QString voiceVendor(void);
45 Capabilities capabilities();
47 // for settings
48 bool configOk();
49 void generateSettings();
50 void saveSettings();
52 private slots:
53 void updateVoiceList();
55 private:
56 QStringList getVoiceList(QString language);
58 QProcess* voicescript;
59 QTextStream* voicestream;
60 QString defaultLanguage;
62 QString m_TTSexec;
63 QString m_TTSOpts;
64 QString m_TTSLanguage;
65 QString m_TTSVoice;
66 QString m_TTSSpeed;
67 bool m_started;
69 protected:
70 QString m_TTSTemplate;
71 QString m_TTSVoiceTemplate;
72 QString m_TTSType;
77 #endif