summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2012-05-19 16:49:48 +0200
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2012-05-19 16:52:58 +0200
commit733eb9af409a0482d92fe8411b1a2bd53375cc71 (patch)
tree41578ac9fa0e91ba09b23860dd23863b1ef15f52 /rbutil/rbutilqt
parent9f89ffa71c7029803c96a102efee0ab65edc6ead (diff)
downloadrockbox-733eb9af409a0482d92fe8411b1a2bd53375cc71.tar.gz
rockbox-733eb9af409a0482d92fe8411b1a2bd53375cc71.zip
Show nicer language names in voice creation dialog.
Instead of showing the internal language names show some more human friendly string. Currently only applies to the voice creation dialog, the language configuration dialog needs further adjustments to support display strings differing from values. Change-Id: Ic94838f1079c1d09a666d7dbd9682c577f686b3f
Diffstat (limited to 'rbutil/rbutilqt')
-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