diff options
Diffstat (limited to 'src/corelib/io/qdebug.cpp')
-rw-r--r-- | src/corelib/io/qdebug.cpp | 62 |
1 files changed, 12 insertions, 50 deletions
diff --git a/src/corelib/io/qdebug.cpp b/src/corelib/io/qdebug.cpp index 013d531581..4d56d1a179 100644 --- a/src/corelib/io/qdebug.cpp +++ b/src/corelib/io/qdebug.cpp @@ -606,31 +606,7 @@ QDebug &QDebug::resetFormat() clean. Output examples: - \code - QString s; - - s = "a"; - qDebug().noquote() << s; // prints: a - qDebug() << s; // prints: "a" - - s = "\"a\r\n\""; - qDebug() << s; // prints: "\"a\r\n\"" - - s = "\033"; // escape character - qDebug() << s; // prints: "\u001B" - - s = "\u00AD"; // SOFT HYPHEN - qDebug() << s; // prints: "\u00AD" - - s = "\u00E1"; // LATIN SMALL LETTER A WITH ACUTE - qDebug() << s; // prints: "á" - - s = "a\u0301"; // "a" followed by COMBINING ACUTE ACCENT - qDebug() << s; // prints: "á"; - - s = "\u0430\u0301"; // CYRILLIC SMALL LETTER A followed by COMBINING ACUTE ACCENT - qDebug() << s; // prints: "а́" - \endcode + \snippet code/src_corelib_io_qdebug.cpp 0 */ /*! @@ -690,25 +666,7 @@ QDebug &QDebug::resetFormat() clean. Output examples: - \code - QByteArray ba; - - ba = "a"; - qDebug().noquote() << ba; // prints: a - qDebug() << ba; // prints: "a" - - ba = "\"a\r\n\""; - qDebug() << ba; // prints: "\"a\r\n\"" - - ba = "\033"; // escape character - qDebug() << ba; // prints: "\x1B" - - ba = "\xC3\xA1"; - qDebug() << ba; // prints: "\xC3\xA1" - - ba = QByteArray("a\0b", 3); - qDebug() << ba // prints: "\a\x00""b" - \endcode + \snippet code/src_corelib_io_qdebug.cpp 1 Note how QDebug needed to close and reopen the string in the way C and C++ languages concatenate string literals so that the letter 'b' is not @@ -939,14 +897,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 +922,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 |