diff options
author | Eike Ziller <eike.ziller@nokia.com> | 2011-10-17 14:22:32 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@nokia.com> | 2011-10-17 14:22:32 +0200 |
commit | 8eb8368139b08064bf3340fe1df4ddc74ae6b44d (patch) | |
tree | 3731efd8103cb1703321eed007574be12475a2ea /src/libs/qmljs/qmljscodeformatter.cpp | |
parent | 4ea9c2193210d2ce87722085aa4ad7cc3057c405 (diff) | |
parent | a9eb880353ce6b07bab5b57b0663fbe714066907 (diff) | |
download | qt-creator-8eb8368139b08064bf3340fe1df4ddc74ae6b44d.tar.gz |
Merge remote-tracking branch 'origin/2.4'
Conflicts:
qtcreator.pri
src/libs/qmljs/qmljstypedescriptionreader.cpp
tests/auto/qml/qmleditor/qmlcodeformatter/tst_qmlcodeformatter.cpp
Change-Id: Id032187023bb42f259a87545ceeb3c965dd01a32
Diffstat (limited to 'src/libs/qmljs/qmljscodeformatter.cpp')
-rw-r--r-- | src/libs/qmljs/qmljscodeformatter.cpp | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/src/libs/qmljs/qmljscodeformatter.cpp b/src/libs/qmljs/qmljscodeformatter.cpp index 2e90179866..d8a4fb1ed1 100644 --- a/src/libs/qmljs/qmljscodeformatter.cpp +++ b/src/libs/qmljs/qmljscodeformatter.cpp @@ -259,6 +259,14 @@ void CodeFormatter::recalculateStateAfter(const QTextBlock &block) default: enter(expression); continue; } break; + case ternary_op: + if (kind == Colon) { + enter(ternary_op_after_colon); + enter(expression_continuation); + break; + } + // fallthrough + case ternary_op_after_colon: case expression: if (tryInsideExpression()) break; @@ -333,18 +341,6 @@ void CodeFormatter::recalculateStateAfter(const QTextBlock &block) default: leave(); continue; } break; - case ternary_op: - if (tryInsideExpression()) - break; - switch (kind) { - case RightParenthesis: - case RightBracket: - case RightBrace: - case Comma: - case Semicolon: leave(); continue; - case Colon: enter(expression); break; // entering expression makes maybe_continuation work - } break; - case jsblock_open: case substatement_open: if (tryStatement()) @@ -495,7 +491,8 @@ void CodeFormatter::recalculateStateAfter(const QTextBlock &block) // some states might be continued on the next line if (topState == expression || topState == expression_or_objectdefinition - || topState == objectliteral_assignment) { + || topState == objectliteral_assignment + || topState == ternary_op_after_colon) { enter(expression_maybe_continuation); } // multi-line comment start? |