forked from qt-creator/qt-creator
Debugger: Dissolve AnalyzerUtils::logToIssuesPane()
If the Error + popup combo is generic it should live in TaskHub. If it is not, end user code should decide when to popup. Not an intermediate level. Change-Id: I195ba8c17c5cc192ff9762ed6f45629143bcbb35 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
@@ -30,7 +30,7 @@
|
||||
#include "clangstaticanalyzersettings.h"
|
||||
#include "clangstaticanalyzerutils.h"
|
||||
|
||||
#include <debugger/analyzer/analyzerutils.h>
|
||||
#include <debugger/analyzer/analyzerconstants.h>
|
||||
|
||||
#include <clangcodemodel/clangutils.h>
|
||||
|
||||
@@ -419,7 +419,8 @@ void ClangStaticAnalyzerRunControl::start()
|
||||
const QString errorMessage = tr("Clang Static Analyzer: Invalid executable \"%1\", stop.")
|
||||
.arg(executable);
|
||||
appendMessage(errorMessage + QLatin1Char('\n'), Utils::ErrorMessageFormat);
|
||||
AnalyzerUtils::logToIssuesPane(Task::Error, errorMessage);
|
||||
TaskHub::addTask(Task::Error, errorMessage, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::requestPopup();
|
||||
emit finished();
|
||||
return;
|
||||
}
|
||||
@@ -432,7 +433,8 @@ void ClangStaticAnalyzerRunControl::start()
|
||||
const QString errorMessage
|
||||
= tr("Clang Static Analyzer: Failed to create temporary dir, stop.");
|
||||
appendMessage(errorMessage + QLatin1Char('\n'), Utils::ErrorMessageFormat);
|
||||
AnalyzerUtils::logToIssuesPane(Task::Error, errorMessage);
|
||||
TaskHub::addTask(Task::Error, errorMessage, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::requestPopup();
|
||||
emit finished();
|
||||
return;
|
||||
}
|
||||
@@ -571,8 +573,8 @@ void ClangStaticAnalyzerRunControl::onRunnerFinishedWithFailure(const QString &e
|
||||
+ QLatin1Char('\n')
|
||||
, Utils::StdErrFormat);
|
||||
appendMessage(errorDetails, Utils::StdErrFormat);
|
||||
AnalyzerUtils::logToIssuesPane(Task::Warning, errorMessage);
|
||||
AnalyzerUtils::logToIssuesPane(Task::Warning, errorDetails);
|
||||
TaskHub::addTask(Task::Warning, errorMessage, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::addTask(Task::Warning, errorDetails, Debugger::Constants::ANALYZERTASK_ID);
|
||||
handleFinished();
|
||||
}
|
||||
|
||||
@@ -605,8 +607,9 @@ void ClangStaticAnalyzerRunControl::finalize()
|
||||
Utils::NormalMessageFormat);
|
||||
|
||||
if (m_filesNotAnalyzed != 0) {
|
||||
AnalyzerUtils::logToIssuesPane(Task::Error,
|
||||
tr("Clang Static Analyzer: Not all files could be analyzed."));
|
||||
QString msg = tr("Clang Static Analyzer: Not all files could be analyzed.");
|
||||
TaskHub::addTask(Task::Error, msg, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::requestPopup();
|
||||
}
|
||||
|
||||
m_progress.reportFinished();
|
||||
|
||||
@@ -25,10 +25,7 @@
|
||||
|
||||
#include "analyzerutils.h"
|
||||
|
||||
#include "analyzerconstants.h"
|
||||
|
||||
#include <cpptools/cppmodelmanager.h>
|
||||
#include <projectexplorer/taskhub.h>
|
||||
#include <texteditor/texteditor.h>
|
||||
#include <texteditor/textdocument.h>
|
||||
|
||||
@@ -39,7 +36,6 @@
|
||||
|
||||
#include <QTextCursor>
|
||||
|
||||
using namespace Debugger;
|
||||
using namespace Core;
|
||||
using namespace ProjectExplorer;
|
||||
|
||||
@@ -89,10 +85,3 @@ CPlusPlus::Symbol *AnalyzerUtils::findSymbolUnderCursor()
|
||||
const CPlusPlus::LookupItem &lookupItem = lookupItems.first(); // ### TODO: select best candidate.
|
||||
return lookupItem.declaration();
|
||||
}
|
||||
|
||||
void AnalyzerUtils::logToIssuesPane(Task::TaskType type, const QString &message)
|
||||
{
|
||||
TaskHub::addTask(type, message, Debugger::Constants::ANALYZERTASK_ID);
|
||||
if (type == Task::Error)
|
||||
TaskHub::requestPopup();
|
||||
}
|
||||
|
||||
@@ -27,13 +27,9 @@
|
||||
|
||||
#include <debugger/debugger_global.h>
|
||||
|
||||
#include <projectexplorer/task.h>
|
||||
|
||||
namespace CPlusPlus { class Symbol; }
|
||||
|
||||
namespace AnalyzerUtils
|
||||
{
|
||||
DEBUGGER_EXPORT CPlusPlus::Symbol *findSymbolUnderCursor();
|
||||
DEBUGGER_EXPORT void logToIssuesPane(ProjectExplorer::Task::TaskType type,
|
||||
const QString &message);
|
||||
}
|
||||
|
||||
@@ -78,6 +78,7 @@
|
||||
#include <projectexplorer/projectexplorericons.h>
|
||||
#include <projectexplorer/projecttree.h>
|
||||
#include <projectexplorer/session.h>
|
||||
#include <projectexplorer/taskhub.h>
|
||||
|
||||
#include <utils/fancymainwindow.h>
|
||||
#include <utils/qtcassert.h>
|
||||
@@ -909,8 +910,9 @@ void CallgrindTool::loadExternalLogFile()
|
||||
|
||||
QFile logFile(filePath);
|
||||
if (!logFile.open(QIODevice::ReadOnly | QIODevice::Text)) {
|
||||
AnalyzerUtils::logToIssuesPane(Task::Error,
|
||||
tr("Callgrind: Failed to open file for reading: %1").arg(filePath));
|
||||
QString msg = tr("Callgrind: Failed to open file for reading: %1").arg(filePath);
|
||||
TaskHub::addTask(Task::Error, msg, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::requestPopup();
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
#include <projectexplorer/project.h>
|
||||
#include <projectexplorer/runconfiguration.h>
|
||||
#include <projectexplorer/target.h>
|
||||
#include <projectexplorer/taskhub.h>
|
||||
#include <projectexplorer/session.h>
|
||||
#include <projectexplorer/buildconfiguration.h>
|
||||
|
||||
@@ -592,8 +593,9 @@ void MemcheckTool::loadExternalXmlLogFile()
|
||||
QFile *logFile = new QFile(filePath);
|
||||
if (!logFile->open(QIODevice::ReadOnly | QIODevice::Text)) {
|
||||
delete logFile;
|
||||
AnalyzerUtils::logToIssuesPane(Task::Error,
|
||||
tr("Memcheck: Failed to open file for reading: %1").arg(filePath));
|
||||
QString msg = tr("Memcheck: Failed to open file for reading: %1").arg(filePath);
|
||||
TaskHub::addTask(Task::Error, msg, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::requestPopup();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -623,8 +625,9 @@ void MemcheckTool::parserError(const Error &error)
|
||||
|
||||
void MemcheckTool::internalParserError(const QString &errorString)
|
||||
{
|
||||
AnalyzerUtils::logToIssuesPane(Task::Error,
|
||||
tr("Memcheck: Error occurred parsing Valgrind output: %1").arg(errorString));
|
||||
QString msg = tr("Memcheck: Error occurred parsing Valgrind output: %1").arg(errorString);
|
||||
TaskHub::addTask(Task::Error, msg, Debugger::Constants::ANALYZERTASK_ID);
|
||||
TaskHub::requestPopup();
|
||||
}
|
||||
|
||||
void MemcheckTool::clearErrorView()
|
||||
|
||||
Reference in New Issue
Block a user