diff options
Diffstat (limited to 'src/corelib/io/qdebug.cpp')
-rw-r--r-- | src/corelib/io/qdebug.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/corelib/io/qdebug.cpp b/src/corelib/io/qdebug.cpp index 013d531581..2e825d2373 100644 --- a/src/corelib/io/qdebug.cpp +++ b/src/corelib/io/qdebug.cpp @@ -939,14 +939,18 @@ void qt_QMetaEnum_flagDebugOperator(QDebug &debug, size_t sizeofT, int value) QDebug qt_QMetaEnum_debugOperator(QDebug &dbg, int value, const QMetaObject *meta, const char *name) { QDebugStateSaver saver(dbg); + dbg.nospace(); QMetaEnum me = meta->enumerator(meta->indexOfEnumerator(name)); const char *key = me.valueToKey(value); - dbg.nospace() << meta->className() << "::" << name << '('; - if (key) + if (key) { + if (const char *scope = me.scope()) + dbg << scope << "::"; + if (me.isScoped()) + dbg << me.enumName() << "::"; dbg << key; - else - dbg << value; - dbg << ')'; + } else { + dbg << meta->className() << "::" << name << "(" << value << ")"; + } return dbg; } @@ -960,7 +964,7 @@ QDebug qt_QMetaEnum_flagDebugOperator(QDebug &debug, quint64 value, const QMetaO const QMetaEnum me = meta->enumerator(meta->indexOfEnumerator(name)); if (const char *scope = me.scope()) debug << scope << "::"; - debug << me.name() << ">(" << me.valueToKeys(value) << ')'; + debug << me.enumName() << ">(" << me.valueToKeys(value) << ')'; return debug; } #endif // !QT_NO_QOBJECT |