diff --git a/CHANGELOG.md b/CHANGELOG.md index 254d6717..a419b97e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,7 @@ # Change log - ## Release 0.5.0 +* New: Add function for loading translations. ([#173](https://github.com/ksnip/kImageAnnotator/issues/173)) ## Release 0.4.1 * Fixed: Brazilian Portuguese translation not loaded. ([#176](https://github.com/ksnip/kImageAnnotator/issues/176)) diff --git a/src/gui/KImageAnnotator.cpp b/src/gui/KImageAnnotator.cpp index d2e43b96..9c24710d 100644 --- a/src/gui/KImageAnnotator.cpp +++ b/src/gui/KImageAnnotator.cpp @@ -34,17 +34,19 @@ namespace kImageAnnotator { void loadTranslations() { - static QTranslator *currentTranslator = nullptr; + static QTranslator *existingTranslator = nullptr; auto translator = new QTranslator(QCoreApplication::instance()); - if (translator->load(QLocale(), QLatin1String("kImageAnnotator"), - QLatin1String("_"), - QLatin1String(KIMAGEANNOTATOR_LANG_INSTALL_DIR))) { - if (currentTranslator) { - QCoreApplication::removeTranslator(currentTranslator); - delete currentTranslator; + auto translationsLoaded = translator->load(QLocale(), + QLatin1String("kImageAnnotator"), + QLatin1String("_"), + QLatin1String(KIMAGEANNOTATOR_LANG_INSTALL_DIR)); + if (translationsLoaded) { + if (existingTranslator != nullptr) { + QCoreApplication::removeTranslator(existingTranslator); + delete existingTranslator; } QCoreApplication::installTranslator(translator); - currentTranslator = translator; + existingTranslator = translator; } }