diff options
Diffstat (limited to 'src/tools')
-rw-r--r-- | src/tools/uic/cpp/cppwriteinitialization.cpp | 19 | ||||
-rw-r--r-- | src/tools/uic/main.cpp | 5 | ||||
-rw-r--r-- | src/tools/uic/option.h | 2 |
3 files changed, 20 insertions, 6 deletions
diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp index 4ad4f60ca8..29a377984c 100644 --- a/src/tools/uic/cpp/cppwriteinitialization.cpp +++ b/src/tools/uic/cpp/cppwriteinitialization.cpp @@ -2309,18 +2309,25 @@ QString WriteInitialization::trCall(const QString &str, const QString &commentHi const QString comment = commentHint.isEmpty() ? QString(QLatin1Char('0')) : fixString(commentHint, m_dindent); if (m_option.translateFunction.isEmpty()) { - result = QLatin1String("QApplication::translate(\""); - result += m_generatedClass; - result += QLatin1Char('"'); - result += QLatin1String(", "); + if (m_option.idBased) { + result = QLatin1String("qtTrId("); + } else { + result = QLatin1String("QApplication::translate(\""); + result += m_generatedClass; + result += QLatin1Char('"'); + result += QLatin1String(", "); + } } else { result = m_option.translateFunction; result += QLatin1Char('('); } result += fixString(str, m_dindent); - result += QLatin1String(", "); - result += comment; + + if (!m_option.idBased) { + result += QLatin1String(", "); + result += comment; + } result += QLatin1Char(')'); return result; diff --git a/src/tools/uic/main.cpp b/src/tools/uic/main.cpp index d86ce28451..229e2a9c2f 100644 --- a/src/tools/uic/main.cpp +++ b/src/tools/uic/main.cpp @@ -95,6 +95,10 @@ int runUic(int argc, char *argv[]) generatorOption.setValueName(QStringLiteral("java|cpp")); parser.addOption(generatorOption); + QCommandLineOption idBasedOption(QStringLiteral("idbased")); + idBasedOption.setDescription(QStringLiteral("Use id based function for i18n")); + parser.addOption(idBasedOption); + parser.addPositionalArgument(QStringLiteral("[uifile]"), QStringLiteral("Input file (*.ui), otherwise stdin.")); parser.process(app); @@ -103,6 +107,7 @@ int runUic(int argc, char *argv[]) driver.option().outputFile = parser.value(outputOption); driver.option().headerProtection = !parser.isSet(noProtOption); driver.option().implicitIncludes = !parser.isSet(noImplicitIncludesOption); + driver.option().idBased = parser.isSet(idBasedOption); driver.option().postfix = parser.value(postfixOption); driver.option().translateFunction = parser.value(translateOption); driver.option().includeFile = parser.value(includeOption); diff --git a/src/tools/uic/option.h b/src/tools/uic/option.h index 57a1550657..1483d94c07 100644 --- a/src/tools/uic/option.h +++ b/src/tools/uic/option.h @@ -51,6 +51,7 @@ struct Option unsigned int extractImages : 1; unsigned int limitXPM_LineLength : 1; unsigned int implicitIncludes: 1; + unsigned int idBased: 1; Generator generator; QString inputFile; @@ -76,6 +77,7 @@ struct Option extractImages(0), limitXPM_LineLength(0), implicitIncludes(1), + idBased(0), generator(CppGenerator), prefix(QLatin1String("Ui_")) { indent.fill(QLatin1Char(' '), 4); } |