mirror of
https://github.com/monero-project/monero-gui.git
synced 2024-12-23 20:20:02 +00:00
Merge pull request #1017
cfc6abc
Embed the translation files in the monero-wallet-gui binary
This commit is contained in:
commit
366534a295
2 changed files with 41 additions and 57 deletions
|
@ -25,19 +25,12 @@ bool TranslationManager::setLanguage(const QString &language)
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// translations are compiled into app binary
|
|
||||||
#ifdef Q_OS_MACX
|
|
||||||
QString dir = qApp->applicationDirPath() + "/../Resources/translations";
|
|
||||||
#else
|
|
||||||
QString dir = qApp->applicationDirPath() + "/translations";
|
QString dir = qApp->applicationDirPath() + "/translations";
|
||||||
#endif
|
|
||||||
|
|
||||||
QString filename = "monero-core_" + language;
|
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));
|
__FUNCTION__, qPrintable(filename), qPrintable(dir));
|
||||||
|
|
||||||
|
|
||||||
if (m_translator->load(filename, dir)) {
|
if (m_translator->load(filename, dir)) {
|
||||||
qDebug("%s: translation for language '%s' loaded successfully",
|
qDebug("%s: translation for language '%s' loaded successfully",
|
||||||
__FUNCTION__, qPrintable(language));
|
__FUNCTION__, qPrintable(language));
|
||||||
|
@ -45,11 +38,24 @@ bool TranslationManager::setLanguage(const QString &language)
|
||||||
qApp->installTranslator(m_translator);
|
qApp->installTranslator(m_translator);
|
||||||
emit languageChanged();
|
emit languageChanged();
|
||||||
return true;
|
return true;
|
||||||
} else {
|
}
|
||||||
|
|
||||||
|
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'",
|
qCritical("%s: error loading translation for language '%s'",
|
||||||
__FUNCTION__, qPrintable(language));
|
__FUNCTION__, qPrintable(language));
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TranslationManager *TranslationManager::instance()
|
TranslationManager *TranslationManager::instance()
|
||||||
|
|
|
@ -327,38 +327,7 @@ macx {
|
||||||
|
|
||||||
|
|
||||||
# translation stuff
|
# translation stuff
|
||||||
TRANSLATIONS = \ # English is default language, no explicit translation file
|
TRANSLATIONS = $$files($$PWD/translations/monero-core_*.ts)
|
||||||
$$PWD/translations/monero-core.ts \ # translation source (copy this file when creating a new translation)
|
|
||||||
$$PWD/translations/monero-core_ar.ts \ # Arabic
|
|
||||||
$$PWD/translations/monero-core_pt-br.ts \ # Portuguese (Brazil)
|
|
||||||
$$PWD/translations/monero-core_de.ts \ # German
|
|
||||||
$$PWD/translations/monero-core_eo.ts \ # Esperanto
|
|
||||||
$$PWD/translations/monero-core_es.ts \ # Spanish
|
|
||||||
$$PWD/translations/monero-core_fi.ts \ # Finnish
|
|
||||||
$$PWD/translations/monero-core_fr.ts \ # French
|
|
||||||
$$PWD/translations/monero-core_hr.ts \ # Croatian
|
|
||||||
$$PWD/translations/monero-core_id.ts \ # Indonesian
|
|
||||||
$$PWD/translations/monero-core_hi.ts \ # Hindi
|
|
||||||
$$PWD/translations/monero-core_it.ts \ # Italian
|
|
||||||
$$PWD/translations/monero-core_ja.ts \ # Japanese
|
|
||||||
$$PWD/translations/monero-core_nl.ts \ # Dutch
|
|
||||||
$$PWD/translations/monero-core_pl.ts \ # Polish
|
|
||||||
$$PWD/translations/monero-core_ru.ts \ # Russian
|
|
||||||
$$PWD/translations/monero-core_sv.ts \ # Swedish
|
|
||||||
$$PWD/translations/monero-core_zh-cn.ts \ # Chinese (Simplified-China)
|
|
||||||
$$PWD/translations/monero-core_zh-tw.ts \ # Chinese (Traditional-Taiwan)
|
|
||||||
$$PWD/translations/monero-core_he.ts \ # Hebrew
|
|
||||||
$$PWD/translations/monero-core_ko.ts \ # Korean
|
|
||||||
$$PWD/translations/monero-core_ro.ts \ # Romanian
|
|
||||||
$$PWD/translations/monero-core_da.ts \ # Danish
|
|
||||||
$$PWD/translations/monero-core_cs.ts \ # Czech
|
|
||||||
$$PWD/translations/monero-core_sk.ts \ # Slovak
|
|
||||||
$$PWD/translations/monero-core_sl.ts \ # Slovenian
|
|
||||||
$$PWD/translations/monero-core_rs.ts \ # Serbian
|
|
||||||
$$PWD/translations/monero-core_cat.ts \ # Catalan
|
|
||||||
$$PWD/translations/monero-core_tr.ts \ # Turkish
|
|
||||||
$$PWD/translations/monero-core_ua.ts \ # Ukrainian
|
|
||||||
$$PWD/translations/monero-core_pt-pt.ts \ # Portuguese (Portugal)
|
|
||||||
|
|
||||||
CONFIG(release, debug|release) {
|
CONFIG(release, debug|release) {
|
||||||
DESTDIR = release/bin
|
DESTDIR = release/bin
|
||||||
|
@ -371,14 +340,7 @@ CONFIG(release, debug|release) {
|
||||||
# LANGREL_OPTIONS = -markuntranslated "MISS_TR "
|
# LANGREL_OPTIONS = -markuntranslated "MISS_TR "
|
||||||
}
|
}
|
||||||
|
|
||||||
TARGET_FULL_PATH = $$OUT_PWD/$$DESTDIR
|
TRANSLATION_TARGET_DIR = $$OUT_PWD/translations
|
||||||
TRANSLATION_TARGET_DIR = $$TARGET_FULL_PATH/translations
|
|
||||||
|
|
||||||
macx {
|
|
||||||
TARGET_FULL_PATH = $$sprintf("%1/%2/%3.app", $$OUT_PWD, $$DESTDIR, $$TARGET)
|
|
||||||
TRANSLATION_TARGET_DIR = $$TARGET_FULL_PATH/Contents/Resources/translations
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
!ios {
|
!ios {
|
||||||
isEmpty(QMAKE_LUPDATE) {
|
isEmpty(QMAKE_LUPDATE) {
|
||||||
|
@ -405,13 +367,29 @@ macx {
|
||||||
|
|
||||||
QMAKE_EXTRA_TARGETS += langupd deploy deploy_win
|
QMAKE_EXTRA_TARGETS += langupd deploy deploy_win
|
||||||
QMAKE_EXTRA_COMPILERS += langrel
|
QMAKE_EXTRA_COMPILERS += langrel
|
||||||
|
|
||||||
|
# Compile an initial version of translation files when running qmake
|
||||||
|
# the first time and generate the resource file for translations.
|
||||||
|
!exists($$TRANSLATION_TARGET_DIR) {
|
||||||
|
mkpath($$TRANSLATION_TARGET_DIR)
|
||||||
|
}
|
||||||
|
qrc_entry = "<RCC>"
|
||||||
|
qrc_entry += ' <qresource prefix="/">'
|
||||||
|
write_file($$TRANSLATION_TARGET_DIR/translations.qrc, qrc_entry)
|
||||||
|
for(tsfile, TRANSLATIONS) {
|
||||||
|
qmfile = $$TRANSLATION_TARGET_DIR/$$basename(tsfile)
|
||||||
|
qmfile ~= s/.ts$/.qm/
|
||||||
|
system($$LANGREL $$LANGREL_OPTIONS $$tsfile -qm $$qmfile)
|
||||||
|
qrc_entry = " <file>$$basename(qmfile)</file>"
|
||||||
|
write_file($$TRANSLATION_TARGET_DIR/translations.qrc, qrc_entry, append)
|
||||||
|
}
|
||||||
|
qrc_entry = " </qresource>"
|
||||||
|
qrc_entry += "</RCC>"
|
||||||
|
write_file($$TRANSLATION_TARGET_DIR/translations.qrc, qrc_entry, append)
|
||||||
|
RESOURCES += $$TRANSLATION_TARGET_DIR/translations.qrc
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Update: no issues with the "slow link process" anymore,
|
# Update: no issues with the "slow link process" anymore,
|
||||||
# for development, just build debug version of libwallet_merged lib
|
# for development, just build debug version of libwallet_merged lib
|
||||||
# by invoking 'get_libwallet_api.sh Debug'
|
# by invoking 'get_libwallet_api.sh Debug'
|
||||||
|
@ -432,7 +410,7 @@ macx {
|
||||||
}
|
}
|
||||||
|
|
||||||
win32 {
|
win32 {
|
||||||
deploy.commands += windeployqt $$sprintf("%1/%2/%3.exe", $$OUT_PWD, $$DESTDIR, $$TARGET) -release -qmldir=$$PWD
|
deploy.commands += windeployqt $$sprintf("%1/%2/%3.exe", $$OUT_PWD, $$DESTDIR, $$TARGET) -release -no-translations -qmldir=$$PWD
|
||||||
# Win64 msys2 deploy settings
|
# Win64 msys2 deploy settings
|
||||||
contains(QMAKE_HOST.arch, x86_64) {
|
contains(QMAKE_HOST.arch, x86_64) {
|
||||||
deploy.commands += $$escape_expand(\n\t) $$PWD/windeploy_helper.sh $$DESTDIR
|
deploy.commands += $$escape_expand(\n\t) $$PWD/windeploy_helper.sh $$DESTDIR
|
||||||
|
|
Loading…
Reference in a new issue