diff options
author | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2014-10-06 10:28:36 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2014-10-06 14:03:36 +0200 |
commit | 1773ee45320c262dfc55b2b760f849e7482d2fb9 (patch) | |
tree | 5d2cfb092e14d9967428f62eb9dee30fe7b5ecd0 | |
parent | 98aebd844ec2867a8ee477f26798854a28f8279c (diff) | |
download | qttools-1773ee45320c262dfc55b2b760f849e7482d2fb9.tar.gz |
Qt Designer: Load translations only when designer_<LANG>.qm is present.
Try to load designer_<LANG>.qm first and load qt_<LANG>.qm only
if the former succeeds.
Task-number: QTBUG-41790
Change-Id: Id4862019edf81da81bf9d059c586bbfee18ab7e6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
-rw-r--r-- | src/designer/src/designer/qdesigner.cpp | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/src/designer/src/designer/qdesigner.cpp b/src/designer/src/designer/qdesigner.cpp index d55c504fb..b8136cab0 100644 --- a/src/designer/src/designer/qdesigner.cpp +++ b/src/designer/src/designer/qdesigner.cpp @@ -209,19 +209,14 @@ void QDesigner::initialize() QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath); parseCommandLineArgs(files, resourceDir); - QTranslator *translator = new QTranslator(this); - QTranslator *qtTranslator = new QTranslator(this); - const QString localSysName = QLocale::system().name(); - QString translatorFileName = QStringLiteral("designer_"); - translatorFileName += localSysName; - translator->load(translatorFileName, resourceDir); - - translatorFileName = QStringLiteral("qt_"); - translatorFileName += localSysName; - qtTranslator->load(translatorFileName, resourceDir); - installTranslator(translator); - installTranslator(qtTranslator); + QScopedPointer<QTranslator> designerTranslator(new QTranslator(this)); + if (designerTranslator->load(QStringLiteral("designer_") + localSysName, resourceDir)) { + installTranslator(designerTranslator.take()); + QScopedPointer<QTranslator> qtTranslator(new QTranslator(this)); + if (qtTranslator->load(QStringLiteral("qt_") + localSysName, resourceDir)) + installTranslator(qtTranslator.take()); + } m_workbench = new QDesignerWorkbench(); |