From aeb7ef6b37030ed4beb8f431167d2ef88172486b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mikl=C3=B3s=20M=C3=A1rton?= Date: Tue, 4 Feb 2020 21:34:45 +0100 Subject: [PATCH] Remove duplicated code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Merge QtOutputFormatter::linkFormat and PythonOutputFormatter::linkFormat to OutputFormatter::linkFormat because these two functions were identical. Fixes: QTCREATORBUG-23562 Change-Id: I1337b2fd66fc7d7b6742eb5e9c1a2caf1dc6b5bd Reviewed-by: David Schulz Reviewed-by: André Hartmann --- src/libs/utils/outputformatter.cpp | 10 ++++++++++ src/libs/utils/outputformatter.h | 1 + src/plugins/python/pythonrunconfiguration.cpp | 10 ---------- src/plugins/qtsupport/qtoutputformatter.cpp | 15 ++------------- 4 files changed, 13 insertions(+), 23 deletions(-) diff --git a/src/libs/utils/outputformatter.cpp b/src/libs/utils/outputformatter.cpp index 475d8596e64..ad077755ca7 100644 --- a/src/libs/utils/outputformatter.cpp +++ b/src/libs/utils/outputformatter.cpp @@ -112,6 +112,16 @@ void OutputFormatter::append(const QString &text, const QTextCharFormat &format) d->cursor.insertText(text.mid(startPos), format); } +QTextCharFormat OutputFormatter::linkFormat(const QTextCharFormat &inputFormat, const QString &href) +{ + QTextCharFormat result = inputFormat; + result.setForeground(creatorTheme()->color(Theme::TextColorLink)); + result.setUnderlineStyle(QTextCharFormat::SingleUnderline); + result.setAnchor(true); + result.setAnchorHref(href); + return result; +} + void OutputFormatter::clearLastLine() { if (!d->cursor.atEnd()) diff --git a/src/libs/utils/outputformatter.h b/src/libs/utils/outputformatter.h index 1db42453d5e..5b7acb03376 100644 --- a/src/libs/utils/outputformatter.h +++ b/src/libs/utils/outputformatter.h @@ -61,6 +61,7 @@ public: virtual QList toolbarWidgets() const { return {}; } virtual void clear() {} void setBoldFontEnabled(bool enabled); + static QTextCharFormat linkFormat(const QTextCharFormat &inputFormat, const QString &href); signals: void contentChanged(); diff --git a/src/plugins/python/pythonrunconfiguration.cpp b/src/plugins/python/pythonrunconfiguration.cpp index 757d96fa452..1783b46930d 100644 --- a/src/plugins/python/pythonrunconfiguration.cpp +++ b/src/plugins/python/pythonrunconfiguration.cpp @@ -60,16 +60,6 @@ using namespace Utils; namespace Python { namespace Internal { -static QTextCharFormat linkFormat(const QTextCharFormat &inputFormat, const QString &href) -{ - QTextCharFormat result = inputFormat; - result.setForeground(creatorTheme()->color(Theme::TextColorLink)); - result.setUnderlineStyle(QTextCharFormat::SingleUnderline); - result.setAnchor(true); - result.setAnchorHref(href); - return result; -} - class PythonOutputFormatter : public OutputFormatter { public: diff --git a/src/plugins/qtsupport/qtoutputformatter.cpp b/src/plugins/qtsupport/qtoutputformatter.cpp index 689ac367cd5..52517c58479 100644 --- a/src/plugins/qtsupport/qtoutputformatter.cpp +++ b/src/plugins/qtsupport/qtoutputformatter.cpp @@ -230,17 +230,6 @@ void QtOutputFormatter::appendLine(const LinkResult &lr, const QString &line, Ou appendLine(lr, line, charFormat(format)); } -static QTextCharFormat linkFormat(const QTextCharFormat &inputFormat, const QString &href) -{ - QTextCharFormat result = inputFormat; - result.setForeground(creatorTheme()->color(Theme::TextColorLink)); - result.setUnderlineStyle(QTextCharFormat::SingleUnderline); - result.setAnchor(true); - result.setAnchorHref(href); - - return result; -} - void QtOutputFormatter::appendLine(const LinkResult &lr, const QString &line, const QTextCharFormat &format) { @@ -554,7 +543,7 @@ void QtSupportPlugin::testQtOutputFormatter_appendMessage_data() << "Object::Test in test.cpp:123" << "Object::Test in test.cpp:123" << QTextCharFormat() - << linkFormat(QTextCharFormat(), "test.cpp:123"); + << OutputFormatter::linkFormat(QTextCharFormat(), "test.cpp:123"); QTest::newRow("colored") << "blue da ba dee" << "blue da ba dee" @@ -608,7 +597,7 @@ void QtSupportPlugin::testQtOutputFormatter_appendMixedAssertAndAnsi() edit.moveCursor(QTextCursor::WordRight); edit.moveCursor(QTextCursor::Right); - QCOMPARE(edit.currentCharFormat(), linkFormat(QTextCharFormat(), "file://test.cpp:123")); + QCOMPARE(edit.currentCharFormat(), OutputFormatter::linkFormat(QTextCharFormat(), "file://test.cpp:123")); edit.moveCursor(QTextCursor::End); QCOMPARE(edit.currentCharFormat(), blueFormat());