summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt')
-rw-r--r--rbutil/rbutilqt/rbutilqt.pro7
-rw-r--r--rbutil/rbutilqt/rbutilqt.qrc3
-rw-r--r--rbutil/rbutilqt/sapicfgfrm.ui27
-rw-r--r--rbutil/rbutilqt/tts.cpp41
-rw-r--r--rbutil/rbutilqt/tts.h3
5 files changed, 17 insertions, 64 deletions
diff --git a/rbutil/rbutilqt/rbutilqt.pro b/rbutil/rbutilqt/rbutilqt.pro
index c344d6ac70..e22954b4cd 100644
--- a/rbutil/rbutilqt/rbutilqt.pro
+++ b/rbutil/rbutilqt/rbutilqt.pro
@@ -150,3 +150,10 @@ static {
150 message("using static plugin") 150 message("using static plugin")
151} 151}
152 152
153# copy sapi script
154win32 {
155 system(copy ..\..\tools\sapi_voice.vbs builtin\sapi_voice.vbs)
156}
157!win32 {
158 system(copy ../../tools/sapi_voice.vbs builtin/sapi_voice.vbs)
159} \ No newline at end of file
diff --git a/rbutil/rbutilqt/rbutilqt.qrc b/rbutil/rbutilqt/rbutilqt.qrc
index 0e571d6585..2df1a422b8 100644
--- a/rbutil/rbutilqt/rbutilqt.qrc
+++ b/rbutil/rbutilqt/rbutilqt.qrc
@@ -1,4 +1,7 @@
1<RCC> 1<RCC>
2 <qresource prefix="/builtin" >
3 <file>builtin/sapi_voice.vbs</file>
4 </qresource>
2 <qresource prefix="/docs" > 5 <qresource prefix="/docs" >
3 <file>CREDITS</file> 6 <file>CREDITS</file>
4 <file>gpl-2.0.html</file> 7 <file>gpl-2.0.html</file>
diff --git a/rbutil/rbutilqt/sapicfgfrm.ui b/rbutil/rbutilqt/sapicfgfrm.ui
index 34e3591aba..9e4cde430a 100644
--- a/rbutil/rbutilqt/sapicfgfrm.ui
+++ b/rbutil/rbutilqt/sapicfgfrm.ui
@@ -20,33 +20,6 @@
20 </property> 20 </property>
21 <layout class="QVBoxLayout" > 21 <layout class="QVBoxLayout" >
22 <item> 22 <item>
23 <widget class="QLabel" name="label" >
24 <property name="sizePolicy" >
25 <sizepolicy vsizetype="Preferred" hsizetype="Preferred" >
26 <horstretch>0</horstretch>
27 <verstretch>255</verstretch>
28 </sizepolicy>
29 </property>
30 <property name="text" >
31 <string>Path to TTS Engine</string>
32 </property>
33 </widget>
34 </item>
35 <item>
36 <layout class="QHBoxLayout" >
37 <item>
38 <widget class="QLineEdit" name="ttspath" />
39 </item>
40 <item>
41 <widget class="QPushButton" name="browse" >
42 <property name="text" >
43 <string>&amp;Browse</string>
44 </property>
45 </widget>
46 </item>
47 </layout>
48 </item>
49 <item>
50 <widget class="QLabel" name="label_2" > 23 <widget class="QLabel" name="label_2" >
51 <property name="text" > 24 <property name="text" >
52 <string>TTS options</string> 25 <string>TTS options</string>
diff --git a/rbutil/rbutilqt/tts.cpp b/rbutil/rbutilqt/tts.cpp
index 63e1188851..9014044ed8 100644
--- a/rbutil/rbutilqt/tts.cpp
+++ b/rbutil/rbutilqt/tts.cpp
@@ -249,7 +249,6 @@ TTSSapi::TTSSapi(QWidget *parent) : TTSBase(parent)
249 ui.setupUi(this); 249 ui.setupUi(this);
250 this->hide(); 250 this->hide();
251 connect(ui.reset,SIGNAL(clicked()),this,SLOT(reset())); 251 connect(ui.reset,SIGNAL(clicked()),this,SLOT(reset()));
252 connect(ui.browse,SIGNAL(clicked()),this,SLOT(browse()));
253} 252}
254 253
255 254
@@ -257,11 +256,13 @@ bool TTSSapi::start()
257{ 256{
258 257
259 userSettings->beginGroup("sapi"); 258 userSettings->beginGroup("sapi");
260 m_TTSexec = userSettings->value("ttspath","").toString();
261 m_TTSOpts = userSettings->value("ttsoptions","").toString(); 259 m_TTSOpts = userSettings->value("ttsoptions","").toString();
262 m_TTSLanguage =userSettings->value("ttslanguage","").toString(); 260 m_TTSLanguage =userSettings->value("ttslanguage","").toString();
263 userSettings->endGroup(); 261 userSettings->endGroup();
264 262
263 QFile::copy(":/builtin/builtin/sapi_voice.vbs",QDir::tempPath() + "/sapi_voice.vbs");
264 m_TTSexec = QDir::tempPath() +"/sapi_voice.vbs";
265
265 QFileInfo tts(m_TTSexec); 266 QFileInfo tts(m_TTSexec);
266 if(!tts.exists()) 267 if(!tts.exists())
267 return false; 268 return false;
@@ -301,7 +302,6 @@ bool TTSSapi::stop()
301 302
302void TTSSapi::reset() 303void TTSSapi::reset()
303{ 304{
304 ui.ttspath->setText("");
305 ui.ttsoptions->setText(""); 305 ui.ttsoptions->setText("");
306 ui.ttslanguage->setText(defaultLanguage); 306 ui.ttslanguage->setText(defaultLanguage);
307} 307}
@@ -310,13 +310,10 @@ void TTSSapi::showCfg()
310{ 310{
311 // try to get config from settings 311 // try to get config from settings
312 userSettings->beginGroup("sapi"); 312 userSettings->beginGroup("sapi");
313 QString exepath =userSettings->value("ttspath","").toString();
314 ui.ttsoptions->setText(userSettings->value("ttsoptions","").toString()); 313 ui.ttsoptions->setText(userSettings->value("ttsoptions","").toString());
315 ui.ttslanguage->setText(userSettings->value("ttsoptions",defaultLanguage).toString()); 314 ui.ttslanguage->setText(userSettings->value("ttslanguage",defaultLanguage).toString());
316 userSettings->endGroup(); 315 userSettings->endGroup();
317 316
318 ui.ttspath->setText(exepath);
319
320 //show dialog 317 //show dialog
321 this->exec(); 318 this->exec();
322 319
@@ -328,7 +325,6 @@ void TTSSapi::accept(void)
328 { 325 {
329 //save settings in user config 326 //save settings in user config
330 userSettings->beginGroup("sapi"); 327 userSettings->beginGroup("sapi");
331 userSettings->setValue("ttspath",ui.ttspath->text());
332 userSettings->setValue("ttsoptions",ui.ttsoptions->text()); 328 userSettings->setValue("ttsoptions",ui.ttsoptions->text());
333 userSettings->setValue("ttslanguage",ui.ttslanguage->text()); 329 userSettings->setValue("ttslanguage",ui.ttslanguage->text());
334 userSettings->endGroup(); 330 userSettings->endGroup();
@@ -345,32 +341,7 @@ void TTSSapi::reject(void)
345 341
346bool TTSSapi::configOk() 342bool TTSSapi::configOk()
347{ 343{
348 userSettings->beginGroup("sapi"); 344 return true;
349 QString path = userSettings->value("ttspath","").toString();
350 userSettings->endGroup();
351
352 if (QFileInfo(path).exists())
353 return true;
354
355 return false;
356} 345}
357 346
358void TTSSapi::browse()
359{
360 BrowseDirtree browser(this);
361 browser.setFilter(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);
362
363 if(QFileInfo(ui.ttspath->text()).isDir())
364 {
365 browser.setDir(ui.ttspath->text());
366 }
367 if(browser.exec() == QDialog::Accepted)
368 {
369 qDebug() << browser.getSelected();
370 QString exe = browser.getSelected();
371 if(!QFileInfo(exe).isExecutable())
372 return;
373 ui.ttspath->setText(exe);
374 }
375}
376 347
diff --git a/rbutil/rbutilqt/tts.h b/rbutil/rbutilqt/tts.h
index 83fcda35ac..f9439ba48d 100644
--- a/rbutil/rbutilqt/tts.h
+++ b/rbutil/rbutilqt/tts.h
@@ -73,8 +73,7 @@ public slots:
73 virtual void accept(void); 73 virtual void accept(void);
74 virtual void reject(void); 74 virtual void reject(void);
75 virtual void reset(void); 75 virtual void reset(void);
76 void browse(void); 76
77
78private: 77private:
79 Ui::SapiCfgFrm ui; 78 Ui::SapiCfgFrm ui;
80 QProcess* voicescript; 79 QProcess* voicescript;