summaryrefslogtreecommitdiff
path: root/rbutil
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil')
-rw-r--r--rbutil/rbutilqt/base/systeminfo.cpp6
-rw-r--r--rbutil/rbutilqt/base/systeminfo.h2
-rw-r--r--rbutil/rbutilqt/base/ttssapi.cpp8
-rw-r--r--rbutil/rbutilqt/createvoicewindow.cpp22
-rw-r--r--rbutil/rbutilqt/rbutil.ini86
5 files changed, 65 insertions, 59 deletions
diff --git a/rbutil/rbutilqt/base/systeminfo.cpp b/rbutil/rbutilqt/base/systeminfo.cpp
index 1f7be72b1e..44bcf3c84d 100644
--- a/rbutil/rbutilqt/base/systeminfo.cpp
+++ b/rbutil/rbutilqt/base/systeminfo.cpp
@@ -143,16 +143,16 @@ QStringList SystemInfo::platforms(enum SystemInfo::PlatformType type, QString va
143 return result; 143 return result;
144} 144}
145 145
146QMap<QString, QString> SystemInfo::languages(void) 146QMap<QString, QStringList> SystemInfo::languages(void)
147{ 147{
148 ensureSystemInfoExists(); 148 ensureSystemInfoExists();
149 149
150 QMap<QString, QString> result; 150 QMap<QString, QStringList> result;
151 systemInfos->beginGroup("languages"); 151 systemInfos->beginGroup("languages");
152 QStringList a = systemInfos->childKeys(); 152 QStringList a = systemInfos->childKeys();
153 for(int i = 0; i < a.size(); i++) 153 for(int i = 0; i < a.size(); i++)
154 { 154 {
155 result.insert(a.at(i), systemInfos->value(a.at(i), "null").toString()); 155 result.insert(a.at(i), systemInfos->value(a.at(i), "null").toStringList());
156 } 156 }
157 systemInfos->endGroup(); 157 systemInfos->endGroup();
158 return result; 158 return result;
diff --git a/rbutil/rbutilqt/base/systeminfo.h b/rbutil/rbutilqt/base/systeminfo.h
index f8c31a9de3..420dbf3c80 100644
--- a/rbutil/rbutilqt/base/systeminfo.h
+++ b/rbutil/rbutilqt/base/systeminfo.h
@@ -79,7 +79,7 @@ class SystemInfo : public QObject
79 static QStringList platforms(enum PlatformType type = PlatformAll, 79 static QStringList platforms(enum PlatformType type = PlatformAll,
80 QString variant=""); 80 QString variant="");
81 //! returns a map of all languages 81 //! returns a map of all languages
82 static QMap<QString, QString> languages(void); 82 static QMap<QString, QStringList> languages(void);
83 //! returns a map of usb-ids and their targets 83 //! returns a map of usb-ids and their targets
84 static QMap<int, QString> usbIdMap(enum MapType); 84 static QMap<int, QString> usbIdMap(enum MapType);
85 //! get a value from system settings 85 //! get a value from system settings
diff --git a/rbutil/rbutilqt/base/ttssapi.cpp b/rbutil/rbutilqt/base/ttssapi.cpp
index 00c63550d3..09c1dd0588 100644
--- a/rbutil/rbutilqt/base/ttssapi.cpp
+++ b/rbutil/rbutilqt/base/ttssapi.cpp
@@ -38,10 +38,14 @@ TTSBase::Capabilities TTSSapi::capabilities()
38void TTSSapi::generateSettings() 38void TTSSapi::generateSettings()
39{ 39{
40 // language 40 // language
41 QMap<QString, QString> languages = SystemInfo::languages(); 41 QMap<QString, QStringList> languages = SystemInfo::languages();
42 QStringList langs;
43 for(int i = 0; i < languages.values().size(); ++i) {
44 langs.append(languages.values().at(i).at(0));
45 }
42 EncTtsSetting* setting =new EncTtsSetting(this,EncTtsSetting::eSTRINGLIST, 46 EncTtsSetting* setting =new EncTtsSetting(this,EncTtsSetting::eSTRINGLIST,
43 tr("Language:"),RbSettings::subValue("sapi",RbSettings::TtsLanguage), 47 tr("Language:"),RbSettings::subValue("sapi",RbSettings::TtsLanguage),
44 languages.values()); 48 langs);
45 connect(setting,SIGNAL(dataChanged()),this,SLOT(updateVoiceList())); 49 connect(setting,SIGNAL(dataChanged()),this,SLOT(updateVoiceList()));
46 insertSetting(eLANGUAGE,setting); 50 insertSetting(eLANGUAGE,setting);
47 // voice 51 // voice
diff --git a/rbutil/rbutilqt/createvoicewindow.cpp b/rbutil/rbutilqt/createvoicewindow.cpp
index d1db0145e4..a45425a0ef 100644
--- a/rbutil/rbutilqt/createvoicewindow.cpp
+++ b/rbutil/rbutilqt/createvoicewindow.cpp
@@ -52,7 +52,7 @@ void CreateVoiceWindow::accept()
52 52
53 //configure voicecreator 53 //configure voicecreator
54 voicecreator->setMountPoint(RbSettings::value(RbSettings::Mountpoint).toString()); 54 voicecreator->setMountPoint(RbSettings::value(RbSettings::Mountpoint).toString());
55 voicecreator->setLang(ui.comboLanguage->currentText()); 55 voicecreator->setLang(ui.comboLanguage->itemData(ui.comboLanguage->currentIndex()).toString());
56 voicecreator->setWavtrimThreshold(ui.wavtrimthreshold->value()); 56 voicecreator->setWavtrimThreshold(ui.wavtrimthreshold->value());
57 57
58 //start creating 58 //start creating
@@ -69,25 +69,25 @@ void CreateVoiceWindow::accept()
69void CreateVoiceWindow::updateSettings(void) 69void CreateVoiceWindow::updateSettings(void)
70{ 70{
71 // fill in language combobox 71 // fill in language combobox
72 QMap<QString, QString> languages = SystemInfo::languages(); 72 QMap<QString, QStringList> languages = SystemInfo::languages();
73 73
74 for(int i = 0; i < languages.keys().size(); i++) { 74 for(int i = 0; i < languages.keys().size(); i++) {
75 QString key = languages.keys().at(i); 75 QString key = languages.keys().at(i);
76 ui.comboLanguage->addItem(languages.value(key), key); 76 ui.comboLanguage->addItem(languages.value(key).at(1), languages.value(key).at(0));
77 } 77 }
78 // set saved lang 78 // set saved lang
79 int sel = ui.comboLanguage->findText( 79 int sel = ui.comboLanguage->findData(
80 RbSettings::value(RbSettings::VoiceLanguage).toString()); 80 RbSettings::value(RbSettings::VoiceLanguage).toString());
81 // if no saved language is found try to figure the language from the UI lang 81 // if no saved language is found try to figure the language from the UI lang
82 if(sel == -1) { 82 if(sel == -1) {
83 QString f = RbSettings::value(RbSettings::Language).toString(); 83 QString uilang = RbSettings::value(RbSettings::Language).toString();
84 // if no language is set default to english. Make sure not to check an empty string. 84 // if no language is set default to english. Make sure not to check an empty string.
85 if(f.isEmpty()) f = "english"; 85 QString f = "english";
86 if(!uilang.isEmpty() && languages.contains(uilang)) {
87 f = languages.value(uilang).at(0);
88 }
86 sel = ui.comboLanguage->findData(f); 89 sel = ui.comboLanguage->findData(f);
87 qDebug() << "sel =" << sel; 90 qDebug() << "[CreateVoiceWindow] Selected language index:" << sel;
88 // still nothing found?
89 if(sel == -1)
90 sel = ui.comboLanguage->findText("english", Qt::MatchStartsWith);
91 } 91 }
92 ui.comboLanguage->setCurrentIndex(sel); 92 ui.comboLanguage->setCurrentIndex(sel);
93 93
@@ -125,7 +125,7 @@ void CreateVoiceWindow::saveSettings(void)
125{ 125{
126 // save selected language 126 // save selected language
127 RbSettings::setValue(RbSettings::VoiceLanguage, 127 RbSettings::setValue(RbSettings::VoiceLanguage,
128 ui.comboLanguage->currentText()); 128 ui.comboLanguage->itemData(ui.comboLanguage->currentIndex()).toString());
129 // save wavtrim threshold value 129 // save wavtrim threshold value
130 RbSettings::setValue(RbSettings::WavtrimThreshold, 130 RbSettings::setValue(RbSettings::WavtrimThreshold,
131 ui.wavtrimthreshold->value()); 131 ui.wavtrimthreshold->value());
diff --git a/rbutil/rbutilqt/rbutil.ini b/rbutil/rbutilqt/rbutil.ini
index c740d35411..8cfaf4ba3e 100644
--- a/rbutil/rbutilqt/rbutil.ini
+++ b/rbutil/rbutilqt/rbutil.ini
@@ -849,47 +849,49 @@ name="Sansa Fuze+ (Recovery Mode)"
849; The language string is sent to the server when retrieving the list of 849; The language string is sent to the server when retrieving the list of
850; strings. Each entry name is the code for the language and used for storing in 850; strings. Each entry name is the code for the language and used for storing in
851; the configuration. 851; the configuration.
852; Format:
853; <language code>=<language string as sent to server>,<human readable string>
852[languages] 854[languages]
853af=afrikaans 855af=afrikaans,Afrikaans
854bg=bulgarian 856bg=bulgarian,Bulgarian
855ca=catala 857ca=catala,Catala
856cs=czech 858cs=czech,Czech
857da=dansk 859da=dansk,Dansk
858de=deutsch 860de=deutsch,Deutsch
859el=greek 861el=greek,Greek
860en=english 862en=english,English (UK)
861en_US=english-us 863en_US=english-us,English (US)
862eo=esperanto 864eo=esperanto,Esperanto
863es=espanol 865es=espanol,Espanol
864et=eesti 866et=eesti,Eesti
865eu=basque 867eu=basque,Basque
866fi=finnish 868fi=finnish,Finnish
867fr=francais 869fr=francais,Francais
868gl=galego 870gl=galego,Galego
869he=hebrew 871he=hebrew,Hebrew
870hi=hindi 872hi=hindi,Hindi
871hu=magyar 873hu=magyar,Magyar
872is=islenska 874is=islenska,Islenska
873it=italiano 875it=italiano,Italiano
874ja=japanese 876ja=japanese,Japanese
875ko=korean 877ko=korean,Korean
876lt=lietuviu 878lt=lietuviu,Lietuviu
877lv=latviesu 879lv=latviesu,Latviesu
878nb=norsk 880nb=norsk,Norsk
879nl=nederlands 881nl=nederlands,Netherlands
880nn=norsk-nynorsk 882nn=norsk-nynorsk,Norsk (Nyorsk)
881pl=polski 883pl=polski,Polski
882pt=portugues 884pt=portugues,Portugues
883pt_BR=portugues-brasileiro 885pt_BR=portugues-brasileiro,Portugues (Brasileiro)
884ro=romaneste 886ro=romaneste,Romaneste
885ru=russian 887ru=russian,Russian
886sk=slovak 888sk=slovak,Slovak
887sl=slovenscina 889sl=slovenscina,Slovenscina
888sv=svenska 890sv=svenska,Svenska
889th=thai 891th=thai,Thai
890tl=tagalog 892tl=tagalog,Tagalog
891tr=turkce 893tr=turkce,Turkce
892wa=wallisertitsch 894wa=wallisertitsch,Wallisertitsch
893zh_CN=chinese-simp 895zh_CN=chinese-simp,Chinese (simplified)
894zh_TW=chinese-trad 896zh_TW=chinese-trad,Chinese (traditional)
895 897