From be563abf68c5c8561d9d6c0b765941b6123fd52e Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Fri, 24 Sep 2010 15:07:42 +0200 Subject: C++ indenter: Simplify debugging by making dump() more verbose. --- src/plugins/cpptools/cppcodeformatter.cpp | 5 ++++- src/plugins/cpptools/cppcodeformatter.h | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) (limited to 'src/plugins/cpptools') diff --git a/src/plugins/cpptools/cppcodeformatter.cpp b/src/plugins/cpptools/cppcodeformatter.cpp index b242f6c490..87811c01cd 100644 --- a/src/plugins/cpptools/cppcodeformatter.cpp +++ b/src/plugins/cpptools/cppcodeformatter.cpp @@ -36,6 +36,7 @@ #include #include +#include #include #include #include @@ -907,10 +908,12 @@ int CodeFormatter::tokenizeBlock(const QTextBlock &block, bool *endedJoined) void CodeFormatter::dump() const { + QMetaEnum metaEnum = staticMetaObject.enumerator(staticMetaObject.indexOfEnumerator("StateType")); + qDebug() << "Current token index" << m_tokenIndex; qDebug() << "Current state:"; foreach (State s, m_currentState) { - qDebug() << s.type << s.savedIndentDepth << s.savedPaddingDepth; + qDebug() << metaEnum.valueToKey(s.type) << s.savedIndentDepth << s.savedPaddingDepth; } qDebug() << "Current indent depth:" << m_indentDepth; qDebug() << "Current padding depth:" << m_paddingDepth; diff --git a/src/plugins/cpptools/cppcodeformatter.h b/src/plugins/cpptools/cppcodeformatter.h index bb46fc6abc..fa306d2c34 100644 --- a/src/plugins/cpptools/cppcodeformatter.h +++ b/src/plugins/cpptools/cppcodeformatter.h @@ -57,6 +57,7 @@ class CppCodeFormatterData; class CPPTOOLS_EXPORT CodeFormatter { + Q_GADGET public: CodeFormatter(); virtual ~CodeFormatter(); @@ -98,7 +99,7 @@ protected: virtual void saveLexerState(QTextBlock *block, int state) const = 0; virtual int loadLexerState(const QTextBlock &block) const = 0; -protected: +public: // must be public to make Q_GADGET introspection work enum StateType { invalid = 0, @@ -170,7 +171,9 @@ protected: expression, // after a '=' in a declaration_start once we're sure it's not '= {' initializer, // after a '=' in a declaration start }; + Q_ENUMS(StateType) +protected: class State { public: State() -- cgit v1.2.1