aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qmlscene
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@digia.com>2014-09-04 14:29:21 +0200
committerShawn Rutledge <shawn.rutledge@digia.com>2014-10-01 15:14:23 +0200
commit427646b8d7c52e5b84240e07ffd391217ce3bfa8 (patch)
treef02ed979b7f0c0b3620689bf921f040eb87c00b3 /tools/qmlscene
parentb9f143945982ae1775c69b9a09dc5e3912a17324 (diff)
use the new form of QTranslator::load() for more flexibility
As the docs explain, the variant of QTranslator::load() taking a const QLocale& is better because it "uses QLocale::uiLanguages() and not simply the locale name, which refers to the formatting of dates and numbers and not necessarily the UI language." And, using a default-constructed QLocale permits QLocale::setDefault() to override the system locale, so for example an application's main.cpp can do that before constructing a QQmlApplicationEngine. Task-number: QTBUG-7329 Change-Id: Ia29a4c894087c92b071c0fe484728866f2660fe6 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Diffstat (limited to 'tools/qmlscene')
-rw-r--r--tools/qmlscene/main.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/tools/qmlscene/main.cpp b/tools/qmlscene/main.cpp
index 208226c8aa..7c2fd9fc32 100644
--- a/tools/qmlscene/main.cpp
+++ b/tools/qmlscene/main.cpp
@@ -307,7 +307,8 @@ static void displayFileDialog(Options *options)
#ifndef QT_NO_TRANSLATION
static void loadTranslationFile(QTranslator &translator, const QString& directory)
{
- translator.load(QLatin1String("qml_" )+QLocale::system().name(), directory + QLatin1String("/i18n"));
+ QLocale locale;
+ translator.load(locale, QLatin1String("qml"), QLatin1String("_"), directory + QLatin1String("/i18n"));
QCoreApplication::installTranslator(&translator);
}
#endif
@@ -415,17 +416,18 @@ int main(int argc, char ** argv)
app.setOrganizationDomain("qt-project.org");
#ifndef QT_NO_TRANSLATION
- QTranslator translator;
+ QLocale locale;
QTranslator qtTranslator;
- QString sysLocale = QLocale::system().name();
- if (qtTranslator.load(QLatin1String("qt_") + sysLocale, QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
+ if (qtTranslator.load(locale, QLatin1String("qt"), QLatin1String("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
app.installTranslator(&qtTranslator);
- if (translator.load(QLatin1String("qmlscene_") + sysLocale, QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
+
+ QTranslator translator;
+ if (translator.load(locale, QLatin1String("qmlscene"), QLatin1String("_"), QLibraryInfo::location(QLibraryInfo::TranslationsPath)))
app.installTranslator(&translator);
QTranslator qmlTranslator;
if (!options.translationFile.isEmpty()) {
- if (qmlTranslator.load(options.translationFile)) {
+ if (qmlTranslator.load(locale, options.translationFile)) {
app.installTranslator(&qmlTranslator);
} else {
qWarning() << "Could not load the translation file" << options.translationFile;