From c5a4b093d051680bf7f34bb5acff16eea9d4979f Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Tue, 26 Jul 2016 20:01:57 +0200 Subject: Add QMetaEnum::isScoped to be able to destinguish C++11 enum class Change-Id: I67b1dbd069fa57bd60e50690abb5d876edc0d1d2 Reviewed-by: Simon Hausmann Reviewed-by: Thiago Macieira --- src/tools/moc/generator.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/tools/moc/generator.cpp') diff --git a/src/tools/moc/generator.cpp b/src/tools/moc/generator.cpp index 7de6fe632f..ccc6d795d7 100644 --- a/src/tools/moc/generator.cpp +++ b/src/tools/moc/generator.cpp @@ -878,9 +878,14 @@ void Generator::generateEnums(int index) int i; for (i = 0; i < cdef->enumList.count(); ++i) { const EnumDef &e = cdef->enumList.at(i); + int flags = 0; + if (cdef->enumDeclarations.value(e.name)) + flags |= EnumIsFlag; + if (e.isEnumClass) + flags |= EnumIsScoped; fprintf(out, " %4d, 0x%.1x, %4d, %4d,\n", stridx(e.name), - cdef->enumDeclarations.value(e.name) ? 1 : 0, + flags, e.values.count(), index); index += e.values.count() * 2; -- cgit v1.2.3