From: Charles Yin Date: Thu, 27 Oct 2011 06:55:43 +0000 (+1000) Subject: Add I18N support to qmltestrunner X-Git-Tag: qt-v5.0.0-alpha1~1269 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=0339d34691ecf4d67d4ef41c028a687251c2d81a;p=profile%2Fivi%2Fqtdeclarative.git Add I18N support to qmltestrunner Add a new command line option "-translation file" to handle translation files to qmltestrunner. Task-number:QTBUG-22390 Change-Id: I351ed41734c79a51e00aeef551af642482bf36f2 Reviewed-by: Michael Brasser Reviewed-by: Yunqiao Yin --- diff --git a/src/qmltest/quicktest.cpp b/src/qmltest/quicktest.cpp index 601f5dc..fb21bd4 100644 --- a/src/qmltest/quicktest.cpp +++ b/src/qmltest/quicktest.cpp @@ -65,6 +65,7 @@ #include #include #include +#include QT_BEGIN_NAMESPACE @@ -115,8 +116,10 @@ int quick_test_main(int argc, char **argv, const char *name, quick_test_viewport // -import dir Specify an import directory. // -input dir Specify the input directory for test cases. // -qtquick1 Run with QtQuick 1 rather than QtQuick 2. + // -translation file Specify the translation file. QStringList imports; QString testPath; + QString translationFile; bool qtQuick2 = true; int outargc = 1; int index = 1; @@ -132,6 +135,9 @@ int quick_test_main(int argc, char **argv, const char *name, quick_test_viewport } else if (strcmp(argv[index], "-qtquick1") == 0) { qtQuick2 = false; ++index; + } else if (strcmp(argv[index], "-translation") == 0 && (index + 1) < argc) { + translationFile = stripQuotes(QString::fromLocal8Bit(argv[index + 1])); + index += 2; } else if (outargc != index) { argv[outargc++] = argv[index++]; } else { @@ -146,6 +152,15 @@ int quick_test_main(int argc, char **argv, const char *name, quick_test_viewport QuickTestResult::parseArgs(argc, argv); QuickTestResult::setProgramName(name); + QTranslator translator; + if (!translationFile.isEmpty()) { + if (translator.load(translationFile)) { + app->installTranslator(&translator); + } else { + qWarning() << "Could not load the translation file" << translationFile; + } + } + // Determine where to look for the test data. if (testPath.isEmpty() && sourceDir) testPath = QString::fromLocal8Bit(sourceDir);