aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJarek Kobus <[email protected]>2023-01-12 02:12:33 +0100
committerJarek Kobus <[email protected]>2023-01-12 10:12:52 +0000
commit6415eef6afd9295529be35fbff0bdb66df82e6f6 (patch)
tree52e6d785246429348aedea7bec8b33b71f941ee1 /src
parente7781e2a99bce1981ab4efab97e5df14b142238c (diff)
DiagnosticMark: Replace source field with ClangToolType
Replace also the AnalyzeOutputData::toolName field with ClangToolType toolType. Stop relying on comparing translatable strings inside DocumentClangToolRunner::onDone(). Change-Id: I1b69619fe9283622ed478973ee3a5e9cf8f4c309 Reviewed-by: David Schulz <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/clangtools/clangtoolrunner.cpp4
-rw-r--r--src/plugins/clangtools/clangtoolrunner.h2
-rw-r--r--src/plugins/clangtools/diagnosticmark.h4
-rw-r--r--src/plugins/clangtools/documentclangtoolrunner.cpp8
4 files changed, 9 insertions, 9 deletions
diff --git a/src/plugins/clangtools/clangtoolrunner.cpp b/src/plugins/clangtools/clangtoolrunner.cpp
index 8adc889bec1..1d74b4b3db9 100644
--- a/src/plugins/clangtools/clangtoolrunner.cpp
+++ b/src/plugins/clangtools/clangtoolrunner.cpp
@@ -163,7 +163,7 @@ TaskItem clangToolTask(const AnalyzeInputData &input,
if (!outputHandler)
return;
const ClangToolStorage *data = storage.activeStorage();
- outputHandler({true, input.unit.file, data->outputFilePath, data->name});
+ outputHandler({true, input.unit.file, data->outputFilePath, input.tool});
};
const auto onProcessError = [=](const QtcProcess &process) {
if (!outputHandler)
@@ -180,7 +180,7 @@ TaskItem clangToolTask(const AnalyzeInputData &input,
message = Tr::tr("%1 finished with exit code: %2.").arg(data->name).arg(process.exitCode());
else
message = Tr::tr("%1 crashed.").arg(data->name);
- outputHandler({false, input.unit.file, data->outputFilePath, data->name, message, details});
+ outputHandler({false, input.unit.file, data->outputFilePath, input.tool, message, details});
};
const Group group {
diff --git a/src/plugins/clangtools/clangtoolrunner.h b/src/plugins/clangtools/clangtoolrunner.h
index b9afb812127..2ba0af444c3 100644
--- a/src/plugins/clangtools/clangtoolrunner.h
+++ b/src/plugins/clangtools/clangtoolrunner.h
@@ -39,7 +39,7 @@ struct AnalyzeOutputData
bool success = true;
QString fileToAnalyze;
QString outputFilePath;
- QString toolName;
+ CppEditor::ClangToolType toolType;
QString errorMessage = {};
QString errorDetails = {};
};
diff --git a/src/plugins/clangtools/diagnosticmark.h b/src/plugins/clangtools/diagnosticmark.h
index 10f0810436f..f318fd67ed9 100644
--- a/src/plugins/clangtools/diagnosticmark.h
+++ b/src/plugins/clangtools/diagnosticmark.h
@@ -5,12 +5,12 @@
#include "clangtoolsdiagnostic.h"
+#include <cppeditor/clangdiagnosticconfig.h>
#include <texteditor/textmark.h>
namespace ClangTools {
namespace Internal {
-
class DiagnosticMark : public TextEditor::TextMark
{
Q_DECLARE_TR_FUNCTIONS(ClangTools::Internal::DiagnosticMark)
@@ -22,7 +22,7 @@ public:
Diagnostic diagnostic() const;
- QString source;
+ std::optional<CppEditor::ClangToolType> toolType;
private:
const Diagnostic m_diagnostic;
diff --git a/src/plugins/clangtools/documentclangtoolrunner.cpp b/src/plugins/clangtools/documentclangtoolrunner.cpp
index 7409ea3bea5..fd018643aad 100644
--- a/src/plugins/clangtools/documentclangtoolrunner.cpp
+++ b/src/plugins/clangtools/documentclangtoolrunner.cpp
@@ -245,10 +245,10 @@ void DocumentClangToolRunner::onDone(const AnalyzeOutputData &output)
}
}
- const QString toolName = output.toolName;
+ const CppEditor::ClangToolType toolType = output.toolType;
// remove outdated marks of the current runner
- auto [toDelete, newMarks] = Utils::partition(m_marks, [toolName](DiagnosticMark *mark) {
- return mark->source == toolName; // TODO: comparison on translatable string
+ const auto [toDelete, newMarks] = Utils::partition(m_marks, [toolType](DiagnosticMark *mark) {
+ return mark->toolType == toolType;
});
m_marks = newMarks;
qDeleteAll(toDelete);
@@ -262,7 +262,7 @@ void DocumentClangToolRunner::onDone(const AnalyzeOutputData &output)
continue;
auto mark = new DiagnosticMark(diagnostic);
- mark->source = toolName;
+ mark->toolType = toolType;
if (doc && Utils::anyOf(diagnostic.explainingSteps, &ExplainingStep::isFixIt)) {
TextEditor::RefactorMarker marker;