summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorStephen Kelly <stephen.kelly@kdab.com>2013-11-11 14:52:11 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-11-11 15:56:52 +0100
commit459fb114818eaf6a209e80ff7d59ccefeee881e3 (patch)
tree59bea0639be7a7dff86781e503d248d805e22302 /src
parenta4446c299a9eab7e1844ca6b94823984c8e7d67b (diff)
uic: Accept an -include argument to generate a #include.
Change-Id: I2854619ab995b4ba3c820fec58e998ad04ac9858 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/tools/uic/cpp/cppwriteincludes.cpp3
-rw-r--r--src/tools/uic/main.cpp6
-rw-r--r--src/tools/uic/option.h1
3 files changed, 10 insertions, 0 deletions
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 <include-file> to <file>."));
+ 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;