AnalyzerManager: Fix analyzer actions disabled after build error

Change-Id: I7a6d29aba5acd2eafccf8b2c2fc08cc4ed6f00f3
Task-Nr: QTCREATORBUG-6318
Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
Daniel Teske
2011-11-11 19:24:04 +01:00
committed by hjk
parent f224667dcf
commit 3e305f9758
4 changed files with 4 additions and 15 deletions

View File

@@ -509,8 +509,6 @@ void AnalyzerManagerPrivate::startLocalTool(IAnalyzerTool *tool, StartMode)
buildType = buildConfig->buildType(); buildType = buildConfig->buildType();
} }
} }
if (!runConfig || !runConfig->isEnabled())
return;
IAnalyzerTool::ToolMode toolMode = tool->toolMode(); IAnalyzerTool::ToolMode toolMode = tool->toolMode();
@@ -558,9 +556,7 @@ void AnalyzerManagerPrivate::startLocalTool(IAnalyzerTool *tool, StartMode)
return; return;
} }
m_isRunning = true;
pe->runProject(pro, tool->id()); pe->runProject(pro, tool->id());
updateRunActions();
} }
void AnalyzerManagerPrivate::startTool() void AnalyzerManagerPrivate::startTool()
@@ -703,13 +699,11 @@ void AnalyzerManagerPrivate::addTool(IAnalyzerTool *tool, const StartModes &mode
void AnalyzerManagerPrivate::handleToolStarted() void AnalyzerManagerPrivate::handleToolStarted()
{ {
m_isRunning = true; // FIXME: Make less global. m_isRunning = true; // FIXME: Make less global.
updateRunActions();
} }
void AnalyzerManagerPrivate::handleToolFinished() void AnalyzerManagerPrivate::handleToolFinished()
{ {
m_isRunning = false; m_isRunning = false;
updateRunActions();
} }
void AnalyzerManagerPrivate::loadToolSettings(IAnalyzerTool *tool) void AnalyzerManagerPrivate::loadToolSettings(IAnalyzerTool *tool)
@@ -759,7 +753,7 @@ void AnalyzerManagerPrivate::updateRunActions()
m_toolBox->setEnabled(!m_isRunning); m_toolBox->setEnabled(!m_isRunning);
m_stopAction->setEnabled(m_isRunning); m_stopAction->setEnabled(m_isRunning);
foreach (QAction *action, m_actions) foreach (QAction *action, m_actions)
action->setEnabled(!m_isRunning); action->setEnabled(startEnabled);
} }
void AnalyzerManagerPrivate::onCurrentProjectChanged(Project *project) void AnalyzerManagerPrivate::onCurrentProjectChanged(Project *project)

View File

@@ -94,7 +94,6 @@ AnalyzerRunControl::AnalyzerRunControl(IAnalyzerTool *tool,
SLOT(addTask(ProjectExplorer::Task::TaskType,QString,QString,int))); SLOT(addTask(ProjectExplorer::Task::TaskType,QString,QString,int)));
connect(d->m_engine, SIGNAL(finished()), connect(d->m_engine, SIGNAL(finished()),
SLOT(engineFinished())); SLOT(engineFinished()));
connect(this, SIGNAL(finished()), SLOT(runControlFinished()), Qt::QueuedConnection);
} }
AnalyzerRunControl::~AnalyzerRunControl() AnalyzerRunControl::~AnalyzerRunControl()
@@ -114,6 +113,8 @@ void AnalyzerRunControl::start()
return; return;
} }
AnalyzerManager::handleToolStarted();
// clear about-to-be-outdated tasks // clear about-to-be-outdated tasks
ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance(); ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance();
TaskHub *hub = pm->getObject<TaskHub>(); TaskHub *hub = pm->getObject<TaskHub>();
@@ -145,12 +146,8 @@ void AnalyzerRunControl::stopIt()
void AnalyzerRunControl::engineFinished() void AnalyzerRunControl::engineFinished()
{ {
d->m_isRunning = false; d->m_isRunning = false;
emit finished();
}
void AnalyzerRunControl::runControlFinished()
{
AnalyzerManager::handleToolFinished(); AnalyzerManager::handleToolFinished();
emit finished();
} }
bool AnalyzerRunControl::isRunning() const bool AnalyzerRunControl::isRunning() const

View File

@@ -69,7 +69,6 @@ private slots:
const QString &file, int line); const QString &file, int line);
void engineFinished(); void engineFinished();
void runControlFinished();
private: private:
class Private; class Private;

View File

@@ -199,7 +199,6 @@ bool QmlProfilerEngine::start()
d->m_fetchingData = true; d->m_fetchingData = true;
} }
AnalyzerManager::handleToolStarted();
emit starting(this); emit starting(this);
return true; return true;
} }