diff options
Diffstat (limited to 'TranslationManager.cpp')
| -rw-r--r-- | TranslationManager.cpp | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/TranslationManager.cpp b/TranslationManager.cpp index fa39d35a..e7fc52aa 100644 --- a/TranslationManager.cpp +++ b/TranslationManager.cpp @@ -25,19 +25,12 @@ bool TranslationManager::setLanguage(const QString &language) return true; } - // translations are compiled into app binary -#ifdef Q_OS_MACX - QString dir = qApp->applicationDirPath() + "/../Resources/translations"; -#else QString dir = qApp->applicationDirPath() + "/translations"; -#endif - QString filename = "monero-core_" + language; - qDebug("%s: loading translation file '%s' from '%s", + qDebug("%s: loading translation file '%s' from '%s'", __FUNCTION__, qPrintable(filename), qPrintable(dir)); - if (m_translator->load(filename, dir)) { qDebug("%s: translation for language '%s' loaded successfully", __FUNCTION__, qPrintable(language)); @@ -45,11 +38,24 @@ bool TranslationManager::setLanguage(const QString &language) qApp->installTranslator(m_translator); emit languageChanged(); return true; - } else { - qCritical("%s: error loading translation for language '%s'", - __FUNCTION__, qPrintable(language)); - return false; } + + qDebug("%s: couldn't load translation file '%s' from '%s'", + __FUNCTION__, qPrintable(filename), qPrintable(dir)); + qDebug("%s: loading embedded translation file '%s'", + __FUNCTION__, qPrintable(filename)); + + if (m_translator->load(filename, ":")) { + qDebug("%s: embedded translation for language '%s' loaded successfully", + __FUNCTION__, qPrintable(language)); + qApp->installTranslator(m_translator); + emit languageChanged(); + return true; + } + + qCritical("%s: error loading translation for language '%s'", + __FUNCTION__, qPrintable(language)); + return false; } TranslationManager *TranslationManager::instance() |
