aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2020-04-22 10:46:09 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2020-04-28 08:45:49 +0000
commitd3be54bcd1c7f77f6714c3161077fabf1da1ded1 (patch)
tree87a6046bc709dab35acc28e15262f27dbdb53e35 /src
parent9f92acf223028114deba1b3ffea94be28b9173f8 (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.cpp9
-rw-r--r--src/plugins/projectexplorer/runcontrol.h5
-rw-r--r--src/plugins/python/pythonrunconfiguration.cpp6
-rw-r--r--src/plugins/qtsupport/qtoutputformatter.cpp8
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 {};
});
}