aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorubbo <ubbo@34ebc366-c3a9-4b3c-9f84-69acf7962910>2011-12-28 18:37:54 +0000
committerubbo <ubbo@34ebc366-c3a9-4b3c-9f84-69acf7962910>2011-12-28 18:37:54 +0000
commitbfce19ae989ffad7f90571cc01fe9f8ad40553e5 (patch)
treef171ccb11b997ec3f41e3d82e6d956a69186dba1
parentuse getKeyByXXX from gpgcontext now, drop methods from keylist (diff)
downloadgpg4usb-bfce19ae989ffad7f90571cc01fe9f8ad40553e5.tar.gz
gpg4usb-bfce19ae989ffad7f90571cc01fe9f8ad40553e5.zip
prepare language listing which works from qt 4.8 onwards
git-svn-id: http://cpunk.de/svn/src/gpg4usb/trunk@712 34ebc366-c3a9-4b3c-9f84-69acf7962910
-rwxr-xr-xsettingsdialog.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/settingsdialog.cpp b/settingsdialog.cpp
index fdead2b..f170440 100755
--- a/settingsdialog.cpp
+++ b/settingsdialog.cpp
@@ -167,6 +167,7 @@ void GeneralTab::applySettings()
}
// http://www.informit.com/articles/article.aspx?p=1405555&seqNum=3
+// http://developer.qt.nokia.com/wiki/How_to_create_a_multi_language_application
QHash<QString, QString> GeneralTab::listLanguages()
{
QHash<QString, QString> languages;
@@ -180,13 +181,18 @@ QHash<QString, QString> GeneralTab::listLanguages()
for (int i = 0; i < fileNames.size(); ++i) {
QString locale = fileNames[i];
+ locale.truncate(locale.lastIndexOf('.'));
locale.remove(0, locale.indexOf('_') + 1);
- locale.chop(3);
+ /* this works in qt 4.8
+ QLocale qloc(locale);
+ QString language = qloc.nativeLanguageName() + " (" + QLocale::languageToString(qloc.language()) + ")";
+ */
QTranslator translator;
translator.load(fileNames[i], qmDir.absolutePath());
QString language = translator.translate("SettingsDialog",
"English", "Insert local name of language here. This is used for the language menu of the settingsdialog");
+
languages.insert(locale, language);
}
return languages;