diff options
author | Christian Kandeler <christian.kandeler@qt.io> | 2020-04-22 10:46:09 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@qt.io> | 2020-04-28 08:45:49 +0000 |
commit | d3be54bcd1c7f77f6714c3161077fabf1da1ded1 (patch) | |
tree | 87a6046bc709dab35acc28e15262f27dbdb53e35 /src | |
parent | 9f92acf223028114deba1b3ffea94be28b9173f8 (diff) |
QtSupport: Add QtTestParser to the list of output formatters
... when creating a run control for a Qt project. Now tasks will appear
in the issues pane for QtTest application output in the app output pane.
Task-number: QTCREATORBUG-22665
Change-Id: I2674f3d4f9aabc0a4db4178dcd5495b822f14022
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/projectexplorer/runcontrol.cpp | 9 | ||||
-rw-r--r-- | src/plugins/projectexplorer/runcontrol.h | 5 | ||||
-rw-r--r-- | src/plugins/python/pythonrunconfiguration.cpp | 6 | ||||
-rw-r--r-- | src/plugins/qtsupport/qtoutputformatter.cpp | 8 |
4 files changed, 14 insertions, 14 deletions
diff --git a/src/plugins/projectexplorer/runcontrol.cpp b/src/plugins/projectexplorer/runcontrol.cpp index 39ec9a7259..2c07d016db 100644 --- a/src/plugins/projectexplorer/runcontrol.cpp +++ b/src/plugins/projectexplorer/runcontrol.cpp @@ -1604,15 +1604,12 @@ OutputFormatterFactory::~OutputFormatterFactory() QList<OutputLineParser *> OutputFormatterFactory::createFormatters(Target *target) { QList<OutputLineParser *> formatters; - for (auto factory : qAsConst(g_outputFormatterFactories)) { - if (auto formatter = factory->m_creator(target)) - formatters << formatter; - } + for (auto factory : qAsConst(g_outputFormatterFactories)) + formatters << factory->m_creator(target); return formatters; } -void OutputFormatterFactory::setFormatterCreator - (const std::function<OutputLineParser *(Target *)> &creator) +void OutputFormatterFactory::setFormatterCreator(const FormatterCreator &creator) { m_creator = creator; } diff --git a/src/plugins/projectexplorer/runcontrol.h b/src/plugins/projectexplorer/runcontrol.h index cd537c3466..242f3b3b15 100644 --- a/src/plugins/projectexplorer/runcontrol.h +++ b/src/plugins/projectexplorer/runcontrol.h @@ -312,10 +312,11 @@ public: static QList<Utils::OutputLineParser *> createFormatters(Target *target); protected: - void setFormatterCreator(const std::function<Utils::OutputLineParser *(Target *)> &creator); + using FormatterCreator = std::function<QList<Utils::OutputLineParser *>(Target *)>; + void setFormatterCreator(const FormatterCreator &creator); private: - std::function<Utils::OutputLineParser *(Target *)> m_creator; + FormatterCreator m_creator; }; } // namespace ProjectExplorer diff --git a/src/plugins/python/pythonrunconfiguration.cpp b/src/plugins/python/pythonrunconfiguration.cpp index 42dad98cb1..30b3a18801 100644 --- a/src/plugins/python/pythonrunconfiguration.cpp +++ b/src/plugins/python/pythonrunconfiguration.cpp @@ -331,10 +331,10 @@ PythonRunConfigurationFactory::PythonRunConfigurationFactory() PythonOutputFormatterFactory::PythonOutputFormatterFactory() { - setFormatterCreator([](Target *t) -> OutputLineParser * { + setFormatterCreator([](Target *t) -> QList<OutputLineParser *> { if (t && t->project()->mimeType() == Constants::C_PY_MIMETYPE) - return new PythonOutputLineParser; - return nullptr; + return {new PythonOutputLineParser}; + return {}; }); } diff --git a/src/plugins/qtsupport/qtoutputformatter.cpp b/src/plugins/qtsupport/qtoutputformatter.cpp index 9c1803bf3d..62cee36796 100644 --- a/src/plugins/qtsupport/qtoutputformatter.cpp +++ b/src/plugins/qtsupport/qtoutputformatter.cpp @@ -27,6 +27,7 @@ #include "qtkitinformation.h" #include "qtsupportconstants.h" +#include "qttestparser.h" #include <coreplugin/editormanager/editormanager.h> #include <projectexplorer/project.h> @@ -242,9 +243,10 @@ void QtOutputLineParser::updateProjectFileList() QtOutputFormatterFactory::QtOutputFormatterFactory() { - setFormatterCreator([](Target *t) -> OutputLineParser * { - BaseQtVersion *qt = QtKitAspect::qtVersion(t ? t->kit() : nullptr); - return qt ? new QtOutputLineParser(t) : nullptr; + setFormatterCreator([](Target *t) -> QList<OutputLineParser *> { + if (QtKitAspect::qtVersion(t ? t->kit() : nullptr)) + return {new QtTestParser, new QtOutputLineParser(t)}; + return {}; }); } |