summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@digia.com>2014-10-06 10:28:36 +0200
committerFriedemann Kleint <Friedemann.Kleint@digia.com>2014-10-06 14:03:36 +0200
commit1773ee45320c262dfc55b2b760f849e7482d2fb9 (patch)
tree5d2cfb092e14d9967428f62eb9dee30fe7b5ecd0
parent98aebd844ec2867a8ee477f26798854a28f8279c (diff)
downloadqttools-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.cpp19
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();