From 486b23b8ef1df404c026514b93f073163885d324 Mon Sep 17 00:00:00 2001 From: Christian Kamm Date: Thu, 8 Jul 2010 08:48:36 +0200 Subject: C++ indenter: Don't add continuation indent after function return type. Task-number: QTCREATORBUG-1816 --- src/plugins/cpptools/cppcodeformatter.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'src/plugins/cpptools/cppcodeformatter.cpp') diff --git a/src/plugins/cpptools/cppcodeformatter.cpp b/src/plugins/cpptools/cppcodeformatter.cpp index 1c84bae4b8..ac4d94faf9 100644 --- a/src/plugins/cpptools/cppcodeformatter.cpp +++ b/src/plugins/cpptools/cppcodeformatter.cpp @@ -932,7 +932,6 @@ void QtStyleCodeFormatter::onEnter(int newState, int *indentDepth, int *savedInd case statement_with_condition: case for_statement: case switch_statement: - case declaration_start: case if_statement: case return_statement: if (firstToken) @@ -940,6 +939,19 @@ void QtStyleCodeFormatter::onEnter(int newState, int *indentDepth, int *savedInd *indentDepth = *savedIndentDepth + 2*m_indentSize; break; + case declaration_start: + if (firstToken) + *savedIndentDepth = tokenPosition; + // continuation indent in function bodies only, to not indent + // after the return type in "void\nfoo() {}" + for (int i = 0; state(i).type != topmost_intro; ++i) { + if (state(i).type == defun_open) { + *indentDepth = *savedIndentDepth + 2*m_indentSize; + break; + } + } + break; + case arglist_open: case condition_paren_open: if (!lastToken) -- cgit v1.2.1