diff options
Diffstat (limited to 'rbutil/rbutilqt/createvoicewindow.cpp')
-rw-r--r-- | rbutil/rbutilqt/createvoicewindow.cpp | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/rbutil/rbutilqt/createvoicewindow.cpp b/rbutil/rbutilqt/createvoicewindow.cpp new file mode 100644 index 0000000000..b8a14498de --- /dev/null +++ b/rbutil/rbutilqt/createvoicewindow.cpp | |||
@@ -0,0 +1,113 @@ | |||
1 | /*************************************************************************** | ||
2 | * __________ __ ___. | ||
3 | * Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
4 | * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
5 | * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
6 | * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
7 | * \/ \/ \/ \/ \/ | ||
8 | * | ||
9 | * Copyright (C) 2007 by Dominik Riebeling | ||
10 | * $Id: createvoicewindow.cpp 15932 2007-12-15 13:13:57Z 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 | #include "createvoicewindow.h" | ||
21 | #include "ui_createvoicefrm.h" | ||
22 | |||
23 | #include "browsedirtree.h" | ||
24 | #include "configure.h" | ||
25 | |||
26 | CreateVoiceWindow::CreateVoiceWindow(QWidget *parent) : QDialog(parent) | ||
27 | { | ||
28 | ui.setupUi(this); | ||
29 | voicecreator = new VoiceFileCreator(this); | ||
30 | |||
31 | connect(ui.change,SIGNAL(clicked()),this,SLOT(change())); | ||
32 | } | ||
33 | |||
34 | void CreateVoiceWindow::change() | ||
35 | { | ||
36 | Config *cw = new Config(this,4); | ||
37 | cw->setUserSettings(userSettings); | ||
38 | cw->setDevices(devices); | ||
39 | cw->show(); | ||
40 | connect(cw, SIGNAL(settingsUpdated()), this, SIGNAL(settingsUpdated())); | ||
41 | } | ||
42 | |||
43 | void CreateVoiceWindow::accept() | ||
44 | { | ||
45 | logger = new ProgressLoggerGui(this); | ||
46 | logger->show(); | ||
47 | connect(logger,SIGNAL(closed()),this,SLOT(close())); | ||
48 | |||
49 | QString platform = userSettings->value("platform").toString(); | ||
50 | QString lang = ui.comboLanguage->currentText(); | ||
51 | |||
52 | //safe selected language | ||
53 | userSettings->setValue("voicelanguage",lang); | ||
54 | userSettings->sync(); | ||
55 | |||
56 | //configure voicecreator | ||
57 | voicecreator->setUserSettings(userSettings); | ||
58 | voicecreator->setDeviceSettings(devices); | ||
59 | voicecreator->setMountPoint(userSettings->value("mountpoint").toString()); | ||
60 | voicecreator->setTargetId(devices->value(platform + "/targetid").toInt()); | ||
61 | voicecreator->setLang(lang); | ||
62 | voicecreator->setProxy(m_proxy); | ||
63 | |||
64 | //start creating | ||
65 | voicecreator->createVoiceFile(logger); | ||
66 | } | ||
67 | |||
68 | |||
69 | |||
70 | void CreateVoiceWindow::setDeviceSettings(QSettings *dev) | ||
71 | { | ||
72 | devices = dev; | ||
73 | qDebug() << "Install::setDeviceSettings:" << devices; | ||
74 | |||
75 | // fill in language combobox | ||
76 | devices->beginGroup("languages"); | ||
77 | QStringList keys = devices->allKeys(); | ||
78 | QStringList languages; | ||
79 | for(int i =0 ; i < keys.size();i++) | ||
80 | { | ||
81 | languages << devices->value(keys.at(i)).toString(); | ||
82 | } | ||
83 | devices->endGroup(); | ||
84 | |||
85 | ui.comboLanguage->addItems(languages); | ||
86 | // set saved lang | ||
87 | ui.comboLanguage->setCurrentIndex(ui.comboLanguage->findText(userSettings->value("voicelanguage").toString())); | ||
88 | } | ||
89 | |||
90 | void CreateVoiceWindow::setUserSettings(QSettings *user) | ||
91 | { | ||
92 | userSettings = user; | ||
93 | |||
94 | QString ttsName = userSettings->value("tts", "none").toString(); | ||
95 | TTSBase* tts = getTTS(ttsName); | ||
96 | tts->setUserCfg(userSettings); | ||
97 | if(tts->configOk()) | ||
98 | ui.labelTtsProfile->setText(tr("Selected TTS engine : <b>%1</b>").arg(ttsName)); | ||
99 | else | ||
100 | ui.labelTtsProfile->setText(tr("Selected TTS Engine: <b>%1</b>").arg("Invalid TTS configuration!")); | ||
101 | |||
102 | QString encoder = userSettings->value("encoder", "none").toString(); | ||
103 | EncBase* enc = getEncoder(encoder); | ||
104 | enc->setUserCfg(userSettings); | ||
105 | if(enc->configOk()) | ||
106 | ui.labelEncProfile->setText(tr("Selected Encoder: <b>%1</b>").arg(encoder)); | ||
107 | else | ||
108 | ui.labelEncProfile->setText(tr("Selected Encoder: <b>%1</b>").arg("Invalid encoder configuration!")); | ||
109 | |||
110 | } | ||
111 | |||
112 | |||
113 | |||