diff options
author | Marcelo Lira <marcelo.lira@openbossa.org> | 2010-09-21 17:21:50 -0300 |
---|---|---|
committer | Hugo Parente Lima <hugo.pl@gmail.com> | 2012-03-08 16:07:18 -0300 |
commit | 148b3af9485a13ec383647b692fae185bce78da9 (patch) | |
tree | 6b73b5f0b3aa392c3eb4c235fe4261cc4e992fe3 /generator | |
parent | e959d2899f38f5b0828035fe7d4769b3603e2974 (diff) |
Fixes generator to actually use extra includes declared for global enums.
And also for class/namespace enums.
Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
Reviewed by Renato Araújo <renato.filho@openbossa.org>
Diffstat (limited to 'generator')
-rw-r--r-- | generator/cppgenerator.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/generator/cppgenerator.cpp b/generator/cppgenerator.cpp index 2df2bae92..afa1746ec 100644 --- a/generator/cppgenerator.cpp +++ b/generator/cppgenerator.cpp @@ -170,6 +170,8 @@ void CppGenerator::generateClass(QTextStream &s, const AbstractMetaClass *metaCl //Extra includes s << endl << "// Extra includes" << endl; QList<Include> includes = metaClass->typeEntry()->extraIncludes(); + foreach (AbstractMetaEnum* cppEnum, metaClass->enums()) + includes.append(cppEnum->typeEntry()->extraIncludes()); qSort(includes.begin(), includes.end()); foreach (Include inc, includes) s << inc.toString() << endl; @@ -3533,6 +3535,16 @@ void CppGenerator::finishGeneration() s << include; s << endl; + //Extra includes + s << endl << "// Extra includes" << endl; + QList<Include> includes; + foreach (AbstractMetaEnum* cppEnum, globalEnums()) + includes.append(cppEnum->typeEntry()->extraIncludes()); + qSort(includes.begin(), includes.end()); + foreach (Include inc, includes) + s << inc.toString() << endl; + s << endl; + TypeSystemTypeEntry* moduleEntry = reinterpret_cast<TypeSystemTypeEntry*>(TypeDatabase::instance()->findType(packageName())); CodeSnipList snips; if (moduleEntry) |