diff options
author | Tobias Hunger <tobias.hunger@digia.com> | 2014-09-26 13:55:14 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@digia.com> | 2014-09-29 12:10:50 +0200 |
commit | 3af3878ace09fedb98c495f9bda550f7aa0df39c (patch) | |
tree | 5434751dbfc28a99e95e472c01a1311331d61fc0 /share | |
parent | f39a86f70ea453df8ead15aea19b8775a066f3c7 (diff) |
JsonWizard: Make wizards translatable
Change-Id: Ia496829dd3070ef65b2cec31ecaf30955b2900c8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Diffstat (limited to 'share')
-rw-r--r-- | share/qtcreator/translations/jsonwizard_tr.pro | 36 | ||||
-rw-r--r-- | share/qtcreator/translations/translations.pro | 6 |
2 files changed, 40 insertions, 2 deletions
diff --git a/share/qtcreator/translations/jsonwizard_tr.pro b/share/qtcreator/translations/jsonwizard_tr.pro new file mode 100644 index 00000000000..4bc9f6da91b --- /dev/null +++ b/share/qtcreator/translations/jsonwizard_tr.pro @@ -0,0 +1,36 @@ +TEMPLATE = subdirs + +isEmpty(JSONWIZARD_TR_H): JSONWIZARD_TR_H = $$OUT_PWD/jsonwizard_tr.h +isEmpty(TOP_LEVEL): TOP_LEVEL = "." + +for(dir, $$list($$files($$TOP_LEVEL/*, true))): \ + JSONWIZARD_FILES += $$files($$dir/wizard.json) + +defineReplace(findToTranslate) { + ROOTKEY = $$1 + OUTPUT = "" + for (KEY, $${ROOTKEY}._KEYS_) { + SUBKEY = $${ROOTKEY}.$${KEY} + MATCHED = $$find(KEY, ^tr[A-Z]) + !isEmpty(MATCHED) { + VALUE = $$eval($${SUBKEY}) + OUTPUT += "QCoreApplication(\"ProjectExplorer::JsonWizard\", \"$${VALUE}\");" + } + OUTPUT += $$findToTranslate($${SUBKEY}) + } + return($$OUTPUT) +} + +WIZ_TRANS_FILE_CONT= \ + "// This file is autogenerated by qmake." \ + "$${LITERAL_HASH}include <QCoreApplication>" + +for (FILE, JSONWIZARD_FILES) { + exists($$FILE) { + JSON = $$cat($$FILE, blob) + parseJson(JSON, WIZ) + WIZ_TRANS_FILE_CONT += $$findToTranslate(WIZ) + } +} + +write_file($$JSONWIZARD_TR_H, WIZ_TRANS_FILE_CONT)|error("Aborting") diff --git a/share/qtcreator/translations/translations.pro b/share/qtcreator/translations/translations.pro index d1fef6a40a1..8afeaf67493 100644 --- a/share/qtcreator/translations/translations.pro +++ b/share/qtcreator/translations/translations.pro @@ -21,6 +21,7 @@ TRANSLATIONS = $$prependAll(LANGUAGES, $$PWD/qtcreator_,.ts) MIME_TR_H = $$OUT_PWD/mime_tr.h CUSTOMWIZARD_TR_H = $$OUT_PWD/customwizard_tr.h +JSONWIZARD_TR_H = $$OUT_PWD/jsonwizard_tr.h QMLWIZARD_TR_H = $$OUT_PWD/qmlwizard_tr.h QTQUICKWIZARD_TR_H = $$OUT_PWD/qtquickwizard_tr.h EXTERNALTOOLS_TR_H = $$OUT_PWD/externaltools_tr.h @@ -45,7 +46,8 @@ extract.commands += \ $$XMLPATTERNS -output $$CUSTOMWIZARD_TR_H -param files=$$CUSTOMWIZARD_FILES $$PWD/extract-customwizards.xq $$escape_expand(\\n\\t) \ $$XMLPATTERNS -output $$QMLWIZARD_TR_H -param files=$$QMLWIZARD_FILES $$PWD/extract-qmlwizards.xq $$escape_expand(\\n\\t) \ $$XMLPATTERNS -output $$QTQUICKWIZARD_TR_H -param files=$$QTQUICKWIZARD_FILES $$PWD/extract-qtquickwizards.xq $$escape_expand(\\n\\t) \ - $$XMLPATTERNS -output $$EXTERNALTOOLS_TR_H -param files=$$EXTERNALTOOLS_FILES $$PWD/extract-externaltools.xq + $$XMLPATTERNS -output $$EXTERNALTOOLS_TR_H -param files=$$EXTERNALTOOLS_FILES $$PWD/extract-externaltools.xq $$escape_expand(\\n\\t) \ + $(QMAKE) -o Makefile.jsonwizard JSONWIZARD_TR_H=\"$$JSONWIZARD_TR_H\" TOP_LEVEL=\"$$IDE_SOURCE_TREE/share/qtcreator/templates/wizards\" $$PWD/jsonwizard_tr.pro QMAKE_EXTRA_TARGETS += extract plugin_sources = $$files($$IDE_SOURCE_TREE/src/plugins/*) @@ -64,7 +66,7 @@ files = $$files($$PWD/*_??.ts) $$PWD/qtcreator_untranslated.ts for(file, files) { lang = $$replace(file, .*_([^/]*)\\.ts, \\1) v = ts-$${lang}.commands - $$v = cd $$wd && $$LUPDATE $$sources $$MIME_TR_H $$CUSTOMWIZARD_TR_H $$QMLWIZARD_TR_H $$QTQUICKWIZARD_TR_H $$EXTERNALTOOLS_TR_H -ts $$file + $$v = cd $$wd && $$LUPDATE $$sources $$MIME_TR_H $$CUSTOMWIZARD_TR_H $$JSONWIZARD_TR_H $$QMLWIZARD_TR_H $$QTQUICKWIZARD_TR_H $$EXTERNALTOOLS_TR_H -ts $$file v = ts-$${lang}.depends $$v = extract QMAKE_EXTRA_TARGETS += ts-$$lang |