From 459fb114818eaf6a209e80ff7d59ccefeee881e3 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Mon, 11 Nov 2013 14:52:11 +0100 Subject: uic: Accept an -include argument to generate a #include. Change-Id: I2854619ab995b4ba3c820fec58e998ad04ac9858 Reviewed-by: Friedemann Kleint --- src/tools/uic/cpp/cppwriteincludes.cpp | 3 +++ src/tools/uic/main.cpp | 6 ++++++ src/tools/uic/option.h | 1 + 3 files changed, 10 insertions(+) (limited to 'src') diff --git a/src/tools/uic/cpp/cppwriteincludes.cpp b/src/tools/uic/cpp/cppwriteincludes.cpp index c473566e3a..5b7403bf06 100644 --- a/src/tools/uic/cpp/cppwriteincludes.cpp +++ b/src/tools/uic/cpp/cppwriteincludes.cpp @@ -127,6 +127,9 @@ void WriteIncludes::acceptUI(DomUI *node) TreeWalker::acceptUI(node); + if (!m_uic->option().includeFile.isEmpty()) + m_globalIncludes.insert(m_uic->option().includeFile, true); + writeHeaders(m_globalIncludes, true); writeHeaders(m_localIncludes, false); diff --git a/src/tools/uic/main.cpp b/src/tools/uic/main.cpp index c29292a99b..cb2bd430ff 100644 --- a/src/tools/uic/main.cpp +++ b/src/tools/uic/main.cpp @@ -95,6 +95,11 @@ int runUic(int argc, char *argv[]) translateOption.setValueName(QStringLiteral("function")); parser.addOption(translateOption); + QCommandLineOption includeOption(QStringList() << QStringLiteral("include")); + includeOption.setDescription(QStringLiteral("Add #include to .")); + includeOption.setValueName(QStringLiteral("include-file")); + parser.addOption(includeOption); + QCommandLineOption generatorOption(QStringList() << QStringLiteral("g") << QStringLiteral("generator")); generatorOption.setDescription(QStringLiteral("Select generator.")); generatorOption.setValueName(QStringLiteral("java|cpp")); @@ -110,6 +115,7 @@ int runUic(int argc, char *argv[]) driver.option().implicitIncludes = !parser.isSet(noImplicitIncludesOption); driver.option().postfix = parser.value(postfixOption); driver.option().translateFunction = parser.value(translateOption); + driver.option().includeFile = parser.value(includeOption); driver.option().generator = (parser.value(generatorOption).toLower() == QLatin1String("java")) ? Option::JavaGenerator : Option::CppGenerator; QString inputFile; diff --git a/src/tools/uic/option.h b/src/tools/uic/option.h index 14ed422d63..52dc731057 100644 --- a/src/tools/uic/option.h +++ b/src/tools/uic/option.h @@ -73,6 +73,7 @@ struct Option QString prefix; QString postfix; QString translateFunction; + QString includeFile; #ifdef QT_UIC_JAVA_GENERATOR QString javaPackage; QString javaOutputDirectory; -- cgit v1.2.3