Browse Source

auto-run translator

pull/2/head
Skycoder42 7 years ago
parent
commit
6fb7ba6245
No known key found for this signature in database GPG Key ID: 8E01AD9EF0578D2B
  1. 1
      .gitignore
  2. 39
      mkspecs/features/qsettingstranslator.prf
  3. 2
      tests/auto/mvvmcore/settingsgenerator/settingsgenerator.pro
  4. 44
      tests/auto/mvvmcore/settingsgenerator/test_de.ts
  5. 8
      tests/auto/mvvmcore/settingsgenerator/tst_settingsgenerator.cpp

1
.gitignore

@ -78,3 +78,4 @@ qpmx.user.json
.ts-dummy .ts-dummy
.qpmx-dev-cache .qpmx-dev-cache
qpmx.json.user qpmx.json.user
*.prodummy

39
mkspecs/features/qsettingstranslator.prf

@ -1,6 +1,13 @@
isEmpty(QMAKE_QSETTINGSGENERATOR): qtPrepareTool(QMAKE_QSETTINGSGENERATOR, qsettingsgenerator) isEmpty(QMAKE_QSETTINGSGENERATOR): qtPrepareTool(QMAKE_QSETTINGSGENERATOR, qsettingsgenerator)
isEmpty(QMAKE_LUPDATE): qtPrepareTool(QMAKE_LUPDATE, lupdate)
isEmpty(QSETTINGSTRANSLATOR_DIR): QSETTINGSTRANSLATOR_DIR = $$_PRO_FILE_PWD_/.ts-dummy isEmpty(QSETTINGSTRANSLATOR_DIR): QSETTINGSTRANSLATOR_DIR = .tr-dummies
isEmpty(MOC_DIR): MOC_DIR = .
debug_and_release {
CONFIG(debug, debug|release):SUFFIX = /debug
CONFIG(release, debug|release):SUFFIX = /release
}
QSETTINGSTRANSLATOR_DIR = $$QSETTINGSTRANSLATOR_DIR$$SUFFIX
!ReleaseBuild:!DebugBuild: { !ReleaseBuild:!DebugBuild: {
qsettingstranslator_c.name = qsettingsgenerator --translate ${QMAKE_FILE_IN} qsettingstranslator_c.name = qsettingsgenerator --translate ${QMAKE_FILE_IN}
@ -12,8 +19,36 @@ isEmpty(QSETTINGSTRANSLATOR_DIR): QSETTINGSTRANSLATOR_DIR = $$_PRO_FILE_PWD_/.ts
qsettingstranslator_c.depends += $$QMAKE_QSETTINGSGENERATOR_EXE qsettingstranslator_c.depends += $$QMAKE_QSETTINGSGENERATOR_EXE
QMAKE_EXTRA_COMPILERS += qsettingstranslator_c QMAKE_EXTRA_COMPILERS += qsettingstranslator_c
PRE_TARGETDEPS += compiler_qsettingstranslator_c_make_all
} else { } else {
qtmvvm_tsgen_target.target = qtmvvm-tsgen qtmvvm_tsgen_target.target = qtmvvm-tsgen
QMAKE_EXTRA_TARGETS += qtmvvm_tsgen_target QMAKE_EXTRA_TARGETS += qtmvvm_tsgen_target
} }
{
DBL_DOLLAR = $${LITERAL_DOLLAR}$${LITERAL_DOLLAR}$${LITERAL_DOLLAR}$${LITERAL_DOLLAR}
lupdate_fakepro_c.name = fakepro ${QMAKE_FILE_IN}
lupdate_fakepro_c.input = CPP_DUMMIES GENERATED_SOURCES
lupdate_fakepro_c.variable_out = TS_FAKEPRO_FILES
lupdate_fakepro_c.commands = echo $$shell_quote(BUILD_SOURCES += ${QMAKE_FILE_IN}) > .tspri.pri \
$$escape_expand(\\n\\t)echo $$shell_quote(for(src, BUILD_SOURCES): SOURCES += $${DBL_DOLLAR}PWD/$${DBL_DOLLAR}src) >> .tspri.pri \
$$escape_expand(\\n\\t)echo $$shell_quote(EXTRAPRI =) $(realpath .tspri.pri) > ${QMAKE_FILE_OUT} \
$$escape_expand(\\n\\t)echo $$shell_quote(include($${DBL_DOLLAR}EXTRAPRI)) >> ${QMAKE_FILE_OUT} \
$$escape_expand(\\n\\t)echo $$shell_quote(include($$_PRO_FILE_)) >> ${QMAKE_FILE_OUT}
lupdate_fakepro_c.output = $$_PRO_FILE_PWD_/.tspro.prodummy
lupdate_fakepro_c.CONFIG += combine no_link
QMAKE_EXTRA_COMPILERS += lupdate_fakepro_c
lupdate_c.name = lupdate ${QMAKE_FILE_IN}
lupdate_c.input = TS_FAKEPRO_FILES SOURCES CPP_DUMMIES GENERATED_SOURCES
lupdate_c.commands = $$QMAKE_LUPDATE -locations relative -pro-out $$shell_quote($$_PRO_FILE_PWD_) -pro $$shell_quote($$_PRO_FILE_PWD_/.tspro.prodummy) \
$$escape_expand(\\n\\t)$$QMAKE_MKDIR $$QSETTINGSTRANSLATOR_DIR/.lupdate
lupdate_c.output = $$QSETTINGSTRANSLATOR_DIR/.lupdate
lupdate_c.CONFIG += combine no_link
!no_auto_lupdate: lupdate_c.CONFIG += target_predeps
lupdate_c.depends += $$QMAKE_LUPDATE_EXE
QMAKE_EXTRA_COMPILERS += lupdate_c
}
QMAKE_DIR_REPLACE += QSETTINGSTRANSLATOR_DIR
QMAKE_DIR_REPLACE_SANE += QSETTINGSTRANSLATOR_DIR

2
tests/auto/mvvmcore/settingsgenerator/settingsgenerator.pro

@ -21,7 +21,7 @@ SETTINGS_DEFINITIONS += \
SETTINGS_TRANSLATIONS += \ SETTINGS_TRANSLATIONS += \
translatortest.xml translatortest.xml
_never_true: SOURCES += $$files(.ts-dummy/*) #_never_true: SOURCES += $$files(.ts-dummy/*)
DISTFILES += \ DISTFILES += \
import_normal.xml \ import_normal.xml \

44
tests/auto/mvvmcore/settingsgenerator/test_de.ts

@ -2,8 +2,50 @@
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="de_DE"> <TS version="2.1" language="de_DE">
<context> <context>
<name>qtmvvm_settings_xml</name> <name>SettingsGeneratorTest</name>
<message> <message>
<location filename="tst_settingsgenerator.cpp" line="+90"/>
<source>somet translated text...</source>
<oldsource>something translated...</oldsource>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>generatortest.xml</name>
<message>
<location filename="../../../../../build-qtmvvm-Desktop_Qt_5_11_1_GCC_64bit-Debug/tests/auto/mvvmcore/settingsgenerator/generatortest.cpp" line="+34"/>
<source>translate me</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>import_config.xml</name>
<message>
<location filename="../../../../../build-qtmvvm-Desktop_Qt_5_11_1_GCC_64bit-Debug/tests/auto/mvvmcore/settingsgenerator/importtest.cpp" line="+29"/>
<source>42</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>import_normal.xml</name>
<message>
<location line="-3"/>
<source>false</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>some_context</name>
<message>
<location filename="../../../../../build-qtmvvm-Desktop_Qt_5_11_1_GCC_64bit-Debug/tests/auto/mvvmcore/settingsgenerator/generatortest.cpp" line="-5"/>
<source>Hello World</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>translatortest.xml</name>
<message>
<location filename="../../../../../build-qtmvvm-Desktop_Qt_5_11_1_GCC_64bit-Debug/tests/auto/mvvmcore/settingsgenerator/.tr-dummies/translatortest.tsdummy.cpp" line="+7"/>
<source>dummy</source> <source>dummy</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

8
tests/auto/mvvmcore/settingsgenerator/tst_settingsgenerator.cpp

@ -12,6 +12,9 @@ class SettingsGeneratorTest : public QObject
private Q_SLOTS: private Q_SLOTS:
void testSettingsGenerator(); void testSettingsGenerator();
void testImportedSettings(); void testImportedSettings();
private:
void trStuff();
}; };
@ -82,6 +85,11 @@ void SettingsGeneratorTest::testImportedSettings()
QCOMPARE(settings->node2.entry1.get(), QString{}); QCOMPARE(settings->node2.entry1.get(), QString{});
} }
void SettingsGeneratorTest::trStuff()
{
tr("somet translated text...");
}
QTEST_MAIN(SettingsGeneratorTest) QTEST_MAIN(SettingsGeneratorTest)
#include "tst_settingsgenerator.moc" #include "tst_settingsgenerator.moc"

Loading…
Cancel
Save