From kde-bindings Fri Apr 02 22:44:38 2010 From: Arno Rehn Date: Fri, 02 Apr 2010 22:44:38 +0000 To: kde-bindings Subject: [Kde-bindings] KDE/kdebindings/generator/generators/smoke Message-Id: <20100402224438.712E3AC88C () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-bindings&m=127024821818156 SVN commit 1110393 by arnorehn: Correctly generate xenum_ functions. Fixes a bug reported by Robert Riemann. Thanks! CCMAIL: robert.riemann@physik.hu-berlin.de CCMAIL: kde-bindings@kde.org M +10 -3 writeSmokeDataFile.cpp --- trunk/KDE/kdebindings/generator/generators/smoke/writeSmokeDataFile.cpp #1110392:1110393 @@ -216,14 +216,21 @@ for (QHash::const_iterator it = enums.constBegin(); it != enums.constEnd(); it++) { if (!it.value().isValid()) continue; - if (it.value().parent() && !externalClasses.contains(it.value().parent()) && it.value().access() != Access_private) { - QString smokeClassName = it.value().parent()->toString(); + + QString smokeClassName; + if (it.value().parent()) { + smokeClassName = it.value().parent()->toString(); + } else { + smokeClassName = it.value().nameSpace(); + } + + if (!smokeClassName.isEmpty() && includedClasses.contains(smokeClassName) && it.value().access() != Access_private) { if (enumClassesHandled.contains(smokeClassName) || Options::voidpTypes.contains(smokeClassName)) continue; enumClassesHandled << smokeClassName; smokeClassName.replace("::", "__"); out << "void xenum_" << smokeClassName << "(Smoke::EnumOperation, Smoke::Index, void*&, long&);\n"; - } else if (!it.value().parent() && it.value().access() != Access_private) { + } else if (smokeClassName.isEmpty() && it.value().access() != Access_private) { if (enumClassesHandled.contains("QGlobalSpace")) continue; out << "void xenum_QGlobalSpace(Smoke::EnumOperation, Smoke::Index, void*&, long&);\n"; _______________________________________________ Kde-bindings mailing list Kde-bindings@kde.org https://mail.kde.org/mailman/listinfo/kde-bindings