diff options
Diffstat (limited to 'src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp')
-rw-r--r-- | src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp b/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp index c8f1f6c8ba..461f31049b 100644 --- a/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp +++ b/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp @@ -145,7 +145,6 @@ ClangStaticAnalyzerTool::ClangStaticAnalyzerTool() {{ClangStaticAnalyzerDockId, m_diagnosticView, {}, Perspective::SplitVertical}} )); - //Debugger::registerAction(Constants::CLANGSTATICANALYZER_RUN_MODE, {}); action = new QAction(tr("Clang Static Analyzer"), this); action->setToolTip(toolTip); menu->addAction(ActionManager::registerAction(action, "ClangStaticAnalyzer.Action"), @@ -211,14 +210,12 @@ static bool dontStartAfterHintForDebugMode(Project *project) return false; } -void ClangStaticAnalyzerTool::startTool() +void ClangStaticAnalyzerTool::handleWorkerStart(RunWorker *runWorker) { - Project *project = SessionManager::startupProject(); + RunControl *runControl = runWorker->runControl(); + Project *project = runControl->project(); QTC_ASSERT(project, emit finished(false); return); - if (dontStartAfterHintForDebugMode(project)) - return; - Debugger::selectPerspective(ClangStaticAnalyzerPerspectiveId); m_diagnosticModel->clear(); setBusyCursor(true); @@ -230,8 +227,13 @@ void ClangStaticAnalyzerTool::startTool() m_toolBusy = true; updateRunActions(); +} - Target * const target = project->activeTarget(); +void ClangStaticAnalyzerTool::startTool() +{ + Project *project = SessionManager::startupProject(); + QTC_ASSERT(project, return); + Target *target = project->activeTarget(); QTC_ASSERT(target, return); DummyRunConfiguration *& rc = m_runConfigs[target]; if (!rc) { @@ -245,6 +247,9 @@ void ClangStaticAnalyzerTool::startTool() connect(SessionManager::instance(), &SessionManager::aboutToRemoveProject, this, onProjectRemoved, Qt::UniqueConnection); } + if (dontStartAfterHintForDebugMode(project)) + return; + ProjectExplorerPlugin::runRunConfiguration(rc, Constants::CLANGSTATICANALYZER_RUN_MODE); } |