diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2020-03-17 10:59:33 +0100 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2020-03-18 13:51:49 +0000 |
commit | 80293aac9364227afe996416cbf399ad09346ee0 (patch) | |
tree | d365a15867e6a0407cc2dbbb749bd585c6b47913 /src/libs/utils/outputformatter.cpp | |
parent | 0fe2b961b9481f16c28ddc1d851f8cfe7e6a2793 (diff) |
OutputFormatter: Simplify logic
Change-Id: I092cdb351f7530284e915cd4955973b21f2577b5
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/libs/utils/outputformatter.cpp')
-rw-r--r-- | src/libs/utils/outputformatter.cpp | 50 |
1 files changed, 23 insertions, 27 deletions
diff --git a/src/libs/utils/outputformatter.cpp b/src/libs/utils/outputformatter.cpp index 940b7cee10..3ad865f3ee 100644 --- a/src/libs/utils/outputformatter.cpp +++ b/src/libs/utils/outputformatter.cpp @@ -204,36 +204,32 @@ void OutputFormatter::appendMessage(const QString &text, OutputFormat format) out.chop(1); } - if (format == ErrorMessageFormat || format == NormalMessageFormat) { + if (format != StdOutFormatSameLine && format != StdErrFormatSameLine) { doAppendMessage(doNewlineEnforcement(out), format); + return; + } + + const bool enforceNewline = d->enforceNewline; + d->enforceNewline = false; + if (enforceNewline) { + out.prepend('\n'); + } else { + const int newline = out.indexOf('\n'); + plainTextEdit()->moveCursor(QTextCursor::End); + if (newline != -1) { + doAppendMessage(out.left(newline), format);// doesn't enforce new paragraph like appendPlainText + out = out.mid(newline); + } + } + + if (out.isEmpty()) { + d->enforceNewline = true; } else { - const bool sameLine = format == StdOutFormatSameLine || format == StdErrFormatSameLine; - if (sameLine) { - bool enforceNewline = d->enforceNewline; - d->enforceNewline = false; - if (enforceNewline) { - out.prepend('\n'); - } else { - const int newline = out.indexOf('\n'); - plainTextEdit()->moveCursor(QTextCursor::End); - if (newline != -1) { - doAppendMessage(out.left(newline), format);// doesn't enforce new paragraph like appendPlainText - out = out.mid(newline); - } - } - - if (out.isEmpty()) { - d->enforceNewline = true; - } else { - if (out.endsWith('\n')) { - d->enforceNewline = true; - out.chop(1); - } - doAppendMessage(out, format); - } - } else { - doAppendMessage(doNewlineEnforcement(out), format); + if (out.endsWith('\n')) { + d->enforceNewline = true; + out.chop(1); } + doAppendMessage(out, format); } } |