CMake: Support Qt6 translation build
This commit is contained in:
parent
056ef79aff
commit
bcbe69491b
2 changed files with 29 additions and 16 deletions
|
@ -148,6 +148,16 @@ set(GTA5VIEW_FORMS
|
||||||
UserInterface.ui
|
UserInterface.ui
|
||||||
)
|
)
|
||||||
|
|
||||||
|
set(GTA5VIEW_TRANSLATIONS
|
||||||
|
res/gta5sync_de.ts
|
||||||
|
res/gta5sync_en_US.ts
|
||||||
|
res/gta5sync_fr.ts
|
||||||
|
res/gta5sync_ko.ts
|
||||||
|
res/gta5sync_ru.ts
|
||||||
|
res/gta5sync_uk.ts
|
||||||
|
res/gta5sync_zh_TW.ts
|
||||||
|
)
|
||||||
|
|
||||||
list(APPEND GTA5VIEW_RESOURCES
|
list(APPEND GTA5VIEW_RESOURCES
|
||||||
res/app.qrc
|
res/app.qrc
|
||||||
res/global.qrc
|
res/global.qrc
|
||||||
|
@ -155,19 +165,19 @@ list(APPEND GTA5VIEW_RESOURCES
|
||||||
set_property(SOURCE res/global.qrc PROPERTY AUTORCC_OPTIONS "-threshold;0;-compress;9")
|
set_property(SOURCE res/global.qrc PROPERTY AUTORCC_OPTIONS "-threshold;0;-compress;9")
|
||||||
|
|
||||||
if(Qt5LinguistTools_FOUND)
|
if(Qt5LinguistTools_FOUND)
|
||||||
qt5_add_translation(GTA5VIEW_TRANSLATIONS
|
qt5_add_translation(GTA5VIEW_QMFILES
|
||||||
res/gta5sync_de.ts
|
${GTA5VIEW_TRANSLATIONS}
|
||||||
res/gta5sync_en_US.ts
|
|
||||||
res/gta5sync_fr.ts
|
|
||||||
res/gta5sync_ko.ts
|
|
||||||
res/gta5sync_ru.ts
|
|
||||||
res/gta5sync_uk.ts
|
|
||||||
res/gta5sync_zh_TW.ts
|
|
||||||
res/qt5/qtbase_en_GB.ts
|
res/qt5/qtbase_en_GB.ts
|
||||||
)
|
)
|
||||||
add_custom_target(translations DEPENDS ${GTA5VIEW_TRANSLATIONS})
|
set(LINGUIST_FOUND TRUE)
|
||||||
|
elseif(Qt6LinguistTools_FOUND)
|
||||||
|
qt6_add_translation(GTA5VIEW_QMFILES
|
||||||
|
${GTA5VIEW_TRANSLATIONS}
|
||||||
|
res/qt6/qtbase_en_GB.ts
|
||||||
|
)
|
||||||
|
set(LINGUIST_FOUND TRUE)
|
||||||
else()
|
else()
|
||||||
set(GTA5VIEW_TRANSLATIONS
|
set(GTA5VIEW_QMFILES
|
||||||
res/gta5sync_de.qm
|
res/gta5sync_de.qm
|
||||||
res/gta5sync_en_US.qm
|
res/gta5sync_en_US.qm
|
||||||
res/gta5sync_fr.qm
|
res/gta5sync_fr.qm
|
||||||
|
@ -303,7 +313,8 @@ add_executable(gta5view
|
||||||
${GTA5VIEW_RESOURCES}
|
${GTA5VIEW_RESOURCES}
|
||||||
)
|
)
|
||||||
|
|
||||||
if(Qt5LinguistTools_FOUND AND QCONF_BUILD)
|
if(LINGUIST_FOUND AND QCONF_BUILD)
|
||||||
|
add_custom_target(translations DEPENDS ${GTA5VIEW_QMFILES})
|
||||||
add_dependencies(gta5view translations)
|
add_dependencies(gta5view translations)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -333,5 +344,5 @@ install(FILES res/gta5view-256.png DESTINATION share/icons/hicolor/256x256/apps
|
||||||
install(FILES res/gta5view-512.png DESTINATION share/icons/hicolor/512x512/apps RENAME de.syping.gta5view.png)
|
install(FILES res/gta5view-512.png DESTINATION share/icons/hicolor/512x512/apps RENAME de.syping.gta5view.png)
|
||||||
install(FILES res/de.syping.gta5view.png DESTINATION share/pixmaps)
|
install(FILES res/de.syping.gta5view.png DESTINATION share/pixmaps)
|
||||||
if(QCONF_BUILD)
|
if(QCONF_BUILD)
|
||||||
install(FILES ${GTA5VIEW_TRANSLATIONS} DESTINATION share/gta5view/translations)
|
install(FILES ${GTA5VIEW_QMFILES} DESTINATION share/gta5view/translations)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -292,7 +292,11 @@ void TranslationClass::loadTranslation(QApplication *app)
|
||||||
{
|
{
|
||||||
app->installTranslator(&inQtTranslator);
|
app->installTranslator(&inQtTranslator);
|
||||||
}
|
}
|
||||||
|
#if QT_VERSION >= 0x060000
|
||||||
|
QLocale::setDefault(QLocale(currentLanguage));
|
||||||
|
#else
|
||||||
QLocale::setDefault(currentLanguage);
|
QLocale::setDefault(currentLanguage);
|
||||||
|
#endif
|
||||||
isLangLoaded = true;
|
isLangLoaded = true;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -304,8 +308,7 @@ QStringList TranslationClass::listTranslations(const QString &langPath)
|
||||||
langDir.setNameFilters(QStringList("gta5sync_*.qm"));
|
langDir.setNameFilters(QStringList("gta5sync_*.qm"));
|
||||||
langDir.setPath(langPath);
|
langDir.setPath(langPath);
|
||||||
QStringList availableLanguages;
|
QStringList availableLanguages;
|
||||||
for (QString lang : langDir.entryList(QDir::Files | QDir::NoDotAndDotDot, QDir::NoSort))
|
for (const QString &lang : langDir.entryList(QDir::Files | QDir::NoDotAndDotDot, QDir::NoSort)) {
|
||||||
{
|
|
||||||
availableLanguages << QString(lang).remove("gta5sync_").remove(".qm");
|
availableLanguages << QString(lang).remove("gta5sync_").remove(".qm");
|
||||||
}
|
}
|
||||||
return availableLanguages;
|
return availableLanguages;
|
||||||
|
@ -317,8 +320,7 @@ QStringList TranslationClass::listAreaTranslations()
|
||||||
langDir.setNameFilters(QStringList("global.*.ini"));
|
langDir.setNameFilters(QStringList("global.*.ini"));
|
||||||
langDir.setPath(":/global");
|
langDir.setPath(":/global");
|
||||||
QStringList availableLanguages;
|
QStringList availableLanguages;
|
||||||
for (QString lang : langDir.entryList(QDir::Files | QDir::NoDotAndDotDot, QDir::NoSort))
|
for (const QString &lang : langDir.entryList(QDir::Files | QDir::NoDotAndDotDot, QDir::NoSort)) {
|
||||||
{
|
|
||||||
availableLanguages << QString(lang).remove("global.").remove(".ini");
|
availableLanguages << QString(lang).remove("global.").remove(".ini");
|
||||||
}
|
}
|
||||||
return availableLanguages;
|
return availableLanguages;
|
||||||
|
|
Loading…
Reference in a new issue