aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2017-04-26 14:23:39 +0200
committerhjk <hjk@qt.io>2017-04-27 07:43:30 +0000
commitc2ebce684928c47612debf821aa16252a39ba197 (patch)
treec24f2bb1e4165692c3289d56059e2edc6aa40f68
parent0de18abbc2b7a355ea31b86c5fed0aa7eb467105 (diff)
Debugger: Reduce explicit DebuggerRunControl use
Aim is to replace it with its ProjectExplorer::RunControl base. Change-Id: I30f837050e7c016887dc4b6cfef10b947f4f88ed Reviewed-by: Christian Stenger <christian.stenger@qt.io>
-rw-r--r--src/plugins/android/androiddebugsupport.cpp4
-rw-r--r--src/plugins/autotest/testrunner.cpp6
-rw-r--r--src/plugins/baremetal/baremetaldebugsupport.cpp2
-rw-r--r--src/plugins/baremetal/baremetalruncontrolfactory.cpp2
-rw-r--r--src/plugins/debugger/debuggerengine.cpp4
-rw-r--r--src/plugins/debugger/debuggerengine.h3
-rw-r--r--src/plugins/debugger/debuggerplugin.cpp2
-rw-r--r--src/plugins/debugger/debuggerruncontrol.cpp14
-rw-r--r--src/plugins/debugger/debuggerruncontrol.h19
-rw-r--r--src/plugins/ios/iosdebugsupport.cpp2
-rw-r--r--src/plugins/qnx/qnxattachdebugsupport.cpp5
-rw-r--r--src/plugins/qnx/qnxdebugsupport.cpp2
-rw-r--r--src/plugins/qnx/qnxruncontrolfactory.cpp2
-rw-r--r--src/plugins/remotelinux/remotelinuxdebugsupport.cpp7
-rw-r--r--src/plugins/remotelinux/remotelinuxdebugsupport.h1
-rw-r--r--src/plugins/winrt/winrtdebugsupport.cpp2
-rw-r--r--src/plugins/winrt/winrtrunnerhelper.cpp4
-rw-r--r--src/plugins/winrt/winrtrunnerhelper.h8
18 files changed, 40 insertions, 49 deletions
diff --git a/src/plugins/android/androiddebugsupport.cpp b/src/plugins/android/androiddebugsupport.cpp
index b31a1269f8..07f58653e5 100644
--- a/src/plugins/android/androiddebugsupport.cpp
+++ b/src/plugins/android/androiddebugsupport.cpp
@@ -150,11 +150,11 @@ AndroidDebugSupport::AndroidDebugSupport(RunControl *runControl)
connect(runControl, &RunControl::finished,
m_runner, &AndroidRunner::stop);
- connect(this->runControl(), &DebuggerRunControl::requestRemoteSetup,
+ connect(this->runControl()->toolRunner(), &DebuggerRunTool::requestRemoteSetup,
m_runner, &AndroidRunner::start);
// FIXME: Move signal to base class and generalize handling.
- connect(this->runControl(), &DebuggerRunControl::aboutToNotifyInferiorSetupOk,
+ connect(this->runControl()->toolRunner(), &DebuggerRunTool::aboutToNotifyInferiorSetupOk,
m_runner, &AndroidRunner::remoteDebuggerRunning);
connect(m_runner, &AndroidRunner::remoteServerRunning,
diff --git a/src/plugins/autotest/testrunner.cpp b/src/plugins/autotest/testrunner.cpp
index 6d406943e0..68c997bcf9 100644
--- a/src/plugins/autotest/testrunner.cpp
+++ b/src/plugins/autotest/testrunner.cpp
@@ -336,8 +336,8 @@ void TestRunner::debugTests()
sp.displayName = config->displayName();
QString errorMessage;
- Debugger::DebuggerRunControl *runControl = Debugger::createDebuggerRunControl(
- sp, config->runConfiguration(), &errorMessage);
+ auto runControl = Debugger::createDebuggerRunControl(sp, config->runConfiguration(),
+ &errorMessage);
if (!runControl) {
emit testResultReady(TestResultPtr(new FaultyTestResult(Result::MessageFatal,
@@ -374,7 +374,7 @@ void TestRunner::debugTests()
outputreader, &QObject::deleteLater);
}
- connect(this, &TestRunner::requestStopTestRun, runControl, &Debugger::DebuggerRunControl::stop);
+ connect(this, &TestRunner::requestStopTestRun, runControl, &ProjectExplorer::RunControl::stop);
connect(runControl, &Debugger::DebuggerRunControl::finished, this, &TestRunner::onFinished);
ProjectExplorer::ProjectExplorerPlugin::startRunControl(runControl);
}
diff --git a/src/plugins/baremetal/baremetaldebugsupport.cpp b/src/plugins/baremetal/baremetaldebugsupport.cpp
index 7bc83fcf85..27c72a6d78 100644
--- a/src/plugins/baremetal/baremetaldebugsupport.cpp
+++ b/src/plugins/baremetal/baremetaldebugsupport.cpp
@@ -46,7 +46,7 @@ BareMetalDebugSupport::BareMetalDebugSupport(RunControl *runControl)
: ToolRunner(runControl)
, m_appLauncher(new ProjectExplorer::ApplicationLauncher(this))
{
- connect(this->runControl(), &Debugger::DebuggerRunControl::requestRemoteSetup,
+ connect(this->runControl()->toolRunner(), &Debugger::DebuggerRunTool::requestRemoteSetup,
this, &BareMetalDebugSupport::remoteSetupRequested);
connect(runControl, &RunControl::finished,
this, &BareMetalDebugSupport::debuggingFinished);
diff --git a/src/plugins/baremetal/baremetalruncontrolfactory.cpp b/src/plugins/baremetal/baremetalruncontrolfactory.cpp
index 647978881a..af493efcee 100644
--- a/src/plugins/baremetal/baremetalruncontrolfactory.cpp
+++ b/src/plugins/baremetal/baremetalruncontrolfactory.cpp
@@ -135,7 +135,7 @@ RunControl *BareMetalRunControlFactory::create(
if (p->startupMode() == GdbServerProvider::StartupOnNetwork)
sp.remoteSetupNeeded = true;
- DebuggerRunControl *runControl = createDebuggerRunControl(sp, rc, errorMessage, mode);
+ auto runControl = createDebuggerRunControl(sp, rc, errorMessage, mode);
if (runControl && sp.remoteSetupNeeded)
new BareMetalDebugSupport(runControl);
diff --git a/src/plugins/debugger/debuggerengine.cpp b/src/plugins/debugger/debuggerengine.cpp
index d6adad2b22..ed34c127e8 100644
--- a/src/plugins/debugger/debuggerengine.cpp
+++ b/src/plugins/debugger/debuggerengine.cpp
@@ -343,7 +343,7 @@ public:
bool isMasterEngine() const { return m_engine->isMasterEngine(); }
DebuggerRunTool *runTool() const
{ return m_masterEngine ? m_masterEngine->runTool() : m_runTool.data(); }
- DebuggerRunControl *runControl() const { return runTool()->runControl(); }
+ RunControl *runControl() const { return runTool()->runControl(); }
void setRemoteSetupState(RemoteSetupState state);
DebuggerEngine *m_engine = nullptr; // Not owned.
@@ -1518,7 +1518,7 @@ void DebuggerEngine::progressPing()
d->m_progress.setProgressValue(progress);
}
-DebuggerRunControl *DebuggerEngine::runControl() const
+RunControl *DebuggerEngine::runControl() const
{
return d->runControl();
}
diff --git a/src/plugins/debugger/debuggerengine.h b/src/plugins/debugger/debuggerengine.h
index 18fb4501d7..9bbcf0c684 100644
--- a/src/plugins/debugger/debuggerengine.h
+++ b/src/plugins/debugger/debuggerengine.h
@@ -53,7 +53,6 @@ class ProcessHandle;
namespace Debugger {
-class DebuggerRunControl;
class RemoteSetupResult;
class DebuggerRunTool;
@@ -433,7 +432,7 @@ protected:
void setTargetState(DebuggerState state);
void setMasterEngine(DebuggerEngine *masterEngine);
- DebuggerRunControl *runControl() const;
+ ProjectExplorer::RunControl *runControl() const;
Terminal *terminal() const;
static QString msgStopped(const QString &reason = QString());
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 6b56cf2a64..af252e5fd7 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -1914,7 +1914,7 @@ void DebuggerPluginPrivate::onCurrentProjectChanged(Project *project)
for (int i = 0, n = m_snapshotHandler->size(); i != n; ++i) {
// Run controls might be deleted during exit.
if (DebuggerEngine *engine = m_snapshotHandler->at(i)) {
- if (DebuggerRunControl *runControl = engine->runControl()) {
+ if (RunControl *runControl = engine->runControl()) {
RunConfiguration *rc = runControl->runConfiguration();
if (rc == activeRc) {
m_snapshotHandler->setCurrentIndex(i);
diff --git a/src/plugins/debugger/debuggerruncontrol.cpp b/src/plugins/debugger/debuggerruncontrol.cpp
index d511dc9e85..48ee74dc9b 100644
--- a/src/plugins/debugger/debuggerruncontrol.cpp
+++ b/src/plugins/debugger/debuggerruncontrol.cpp
@@ -541,11 +541,11 @@ DebuggerRunTool::DebuggerRunTool(RunControl *runControl, const DebuggerRunParame
connect(runControl, &RunControl::finished,
this, &DebuggerRunTool::handleFinished);
connect(m_engine, &DebuggerEngine::requestRemoteSetup,
- this->runControl(), &DebuggerRunControl::requestRemoteSetup);
+ this, &DebuggerRunTool::requestRemoteSetup);
connect(m_engine, &DebuggerEngine::stateChanged,
- this->runControl(), &DebuggerRunControl::stateChanged);
+ this, &DebuggerRunTool::stateChanged);
connect(m_engine, &DebuggerEngine::aboutToNotifyInferiorSetupOk,
- this->runControl(), &DebuggerRunControl::aboutToNotifyInferiorSetupOk);
+ this, &DebuggerRunTool::aboutToNotifyInferiorSetupOk);
}
DebuggerRunTool::~DebuggerRunTool()
@@ -692,10 +692,10 @@ RunControl *createAndScheduleRun(const DebuggerRunParameters &rp, Kit *kit)
/**
* Main entry point for target plugins.
*/
-DebuggerRunControl *createDebuggerRunControl(const DebuggerStartParameters &sp,
- RunConfiguration *runConfig,
- QString *errorMessage,
- Core::Id runMode)
+RunControl *createDebuggerRunControl(const DebuggerStartParameters &sp,
+ RunConfiguration *runConfig,
+ QString *errorMessage,
+ Core::Id runMode)
{
QTC_ASSERT(runConfig, return nullptr);
auto runControl = new DebuggerRunControl(runConfig, runMode);
diff --git a/src/plugins/debugger/debuggerruncontrol.h b/src/plugins/debugger/debuggerruncontrol.h
index 6b15c0624e..8e84b0bdcd 100644
--- a/src/plugins/debugger/debuggerruncontrol.h
+++ b/src/plugins/debugger/debuggerruncontrol.h
@@ -37,10 +37,11 @@ class RemoteSetupResult;
class DebuggerStartParameters;
class DebuggerRunControl;
-DEBUGGER_EXPORT DebuggerRunControl *createDebuggerRunControl(const DebuggerStartParameters &sp,
- ProjectExplorer::RunConfiguration *runConfig,
- QString *errorMessage,
- Core::Id runMode = ProjectExplorer::Constants::DEBUG_RUN_MODE);
+DEBUGGER_EXPORT ProjectExplorer::RunControl *
+createDebuggerRunControl(const DebuggerStartParameters &sp,
+ ProjectExplorer::RunConfiguration *runConfig,
+ QString *errorMessage,
+ Core::Id runMode = ProjectExplorer::Constants::DEBUG_RUN_MODE);
class DEBUGGER_EXPORT DebuggerRunTool : public ProjectExplorer::ToolRunner
{
@@ -76,6 +77,11 @@ public:
DebuggerStartParameters &startParameters(); // Used in Boot2Qt.
+signals:
+ void stateChanged(Debugger::DebuggerState state);
+ void aboutToNotifyInferiorSetupOk();
+ void requestRemoteSetup();
+
private:
Internal::DebuggerEngine *m_engine = nullptr; // Master engine
QStringList m_errors;
@@ -94,11 +100,6 @@ public:
DebuggerRunTool *toolRunner() const;
-signals:
- void requestRemoteSetup();
- void aboutToNotifyInferiorSetupOk();
- void stateChanged(Debugger::DebuggerState state);
-
public:
DebuggerRunTool *m_debuggerTool = nullptr;
};
diff --git a/src/plugins/ios/iosdebugsupport.cpp b/src/plugins/ios/iosdebugsupport.cpp
index 03ff6467b0..1d392e0c01 100644
--- a/src/plugins/ios/iosdebugsupport.cpp
+++ b/src/plugins/ios/iosdebugsupport.cpp
@@ -166,7 +166,7 @@ IosDebugSupport::IosDebugSupport(RunControl *runControl, bool cppDebug, bool qml
m_runner(new IosRunner(this, runControl, cppDebug,
qmlDebug ? QmlDebug::QmlDebuggerServices : QmlDebug::NoQmlDebugServices))
{
- connect(this->runControl(), &DebuggerRunControl::requestRemoteSetup,
+ connect(this->runControl()->toolRunner(), &DebuggerRunTool::requestRemoteSetup,
m_runner, &IosRunner::start);
connect(runControl, &RunControl::finished,
m_runner, &IosRunner::stop);
diff --git a/src/plugins/qnx/qnxattachdebugsupport.cpp b/src/plugins/qnx/qnxattachdebugsupport.cpp
index d4f304aca4..e9002036c5 100644
--- a/src/plugins/qnx/qnxattachdebugsupport.cpp
+++ b/src/plugins/qnx/qnxattachdebugsupport.cpp
@@ -134,7 +134,7 @@ void QnxAttachDebugSupport::attachToProcess()
sp.solibSearchPath = QnxUtils::searchPaths(qtVersion);
QString errorMessage;
- Debugger::DebuggerRunControl *runControl = Debugger::createDebuggerRunControl(sp, 0, &errorMessage);
+ auto runControl = Debugger::createDebuggerRunControl(sp, 0, &errorMessage);
if (!errorMessage.isEmpty()) {
handleError(errorMessage);
stopPDebug();
@@ -145,7 +145,8 @@ void QnxAttachDebugSupport::attachToProcess()
stopPDebug();
return;
}
- connect(runControl, &Debugger::DebuggerRunControl::stateChanged,
+ connect(qobject_cast<Debugger::DebuggerRunTool *>(runControl->toolRunner()),
+ &Debugger::DebuggerRunTool::stateChanged,
this, &QnxAttachDebugSupport::handleDebuggerStateChanged);
ProjectExplorerPlugin::startRunControl(runControl);
}
diff --git a/src/plugins/qnx/qnxdebugsupport.cpp b/src/plugins/qnx/qnxdebugsupport.cpp
index 0978a072d9..a9a1c73793 100644
--- a/src/plugins/qnx/qnxdebugsupport.cpp
+++ b/src/plugins/qnx/qnxdebugsupport.cpp
@@ -61,7 +61,7 @@ QnxDebugSupport::QnxDebugSupport(RunControl *runControl)
connect(runner, &ApplicationLauncher::remoteStdout, this, &QnxDebugSupport::handleRemoteOutput);
connect(runner, &ApplicationLauncher::remoteStderr, this, &QnxDebugSupport::handleRemoteOutput);
- connect(this->runControl(), &Debugger::DebuggerRunControl::requestRemoteSetup,
+ connect(this->runControl()->toolRunner(), &Debugger::DebuggerRunTool::requestRemoteSetup,
this, &QnxDebugSupport::handleAdapterSetupRequested);
connect(runControl, &RunControl::finished,
this, &QnxDebugSupport::handleDebuggingFinished);
diff --git a/src/plugins/qnx/qnxruncontrolfactory.cpp b/src/plugins/qnx/qnxruncontrolfactory.cpp
index a9bb2a0010..9d0d84cef7 100644
--- a/src/plugins/qnx/qnxruncontrolfactory.cpp
+++ b/src/plugins/qnx/qnxruncontrolfactory.cpp
@@ -132,7 +132,7 @@ RunControl *QnxRunControlFactory::create(RunConfiguration *runConfig, Core::Id m
if (mode == ProjectExplorer::Constants::DEBUG_RUN_MODE) {
const DebuggerStartParameters params = createDebuggerStartParameters(rc);
- DebuggerRunControl *runControl = createDebuggerRunControl(params, runConfig, errorMessage);
+ auto runControl = createDebuggerRunControl(params, runConfig, errorMessage);
QTC_ASSERT(runControl, return 0);
(void) new QnxDebugSupport(runControl);
return runControl;
diff --git a/src/plugins/remotelinux/remotelinuxdebugsupport.cpp b/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
index ac3d1ec9a2..5293634918 100644
--- a/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
+++ b/src/plugins/remotelinux/remotelinuxdebugsupport.cpp
@@ -79,7 +79,7 @@ LinuxDeviceDebugSupport::LinuxDeviceDebugSupport(RunControl *runControl,
: DebuggerRunTool(runControl, sp, errorMessage),
d(new LinuxDeviceDebugSupportPrivate(runControl->runConfiguration()))
{
- connect(this->runControl(), &DebuggerRunControl::requestRemoteSetup,
+ connect(this, &DebuggerRunTool::requestRemoteSetup,
this, &LinuxDeviceDebugSupport::handleRemoteSetupRequested);
connect(runControl, &RunControl::finished,
this, &LinuxDeviceDebugSupport::handleDebuggingFinished);
@@ -113,11 +113,6 @@ void LinuxDeviceDebugSupport::showMessage(const QString &msg, int channel)
runControl()->toolRunner()->showMessage(msg, channel);
}
-DebuggerRunControl *LinuxDeviceDebugSupport::runControl() const
-{
- return qobject_cast<DebuggerRunControl *>(ToolRunner::runControl());
-}
-
AbstractRemoteLinuxRunSupport *LinuxDeviceDebugSupport::targetRunner() const
{
return qobject_cast<AbstractRemoteLinuxRunSupport *>(runControl()->targetRunner());
diff --git a/src/plugins/remotelinux/remotelinuxdebugsupport.h b/src/plugins/remotelinux/remotelinuxdebugsupport.h
index 1ad6d6d5d7..59cccabb0b 100644
--- a/src/plugins/remotelinux/remotelinuxdebugsupport.h
+++ b/src/plugins/remotelinux/remotelinuxdebugsupport.h
@@ -47,7 +47,6 @@ protected:
virtual ProjectExplorer::Runnable realRunnable() const;
bool isCppDebugging() const;
bool isQmlDebugging() const;
- Debugger::DebuggerRunControl *runControl() const;
private:
void startExecution();
diff --git a/src/plugins/winrt/winrtdebugsupport.cpp b/src/plugins/winrt/winrtdebugsupport.cpp
index 1cd538dd4a..aa17bca0c8 100644
--- a/src/plugins/winrt/winrtdebugsupport.cpp
+++ b/src/plugins/winrt/winrtdebugsupport.cpp
@@ -144,7 +144,7 @@ RunControl *WinRtDebugSupport::createDebugRunControl(WinRtRunConfiguration *runC
return 0;
}
server.close();
- Debugger::DebuggerRunControl *debugRunControl
+ auto debugRunControl
= createDebuggerRunControl(params, runConfig, errorMessage, mode);
runner->setDebugRunControl(debugRunControl);
new WinRtDebugSupport(debugRunControl, runner);
diff --git a/src/plugins/winrt/winrtrunnerhelper.cpp b/src/plugins/winrt/winrtrunnerhelper.cpp
index 7f3d3c70b3..73a36859f5 100644
--- a/src/plugins/winrt/winrtrunnerhelper.cpp
+++ b/src/plugins/winrt/winrtrunnerhelper.cpp
@@ -146,9 +146,9 @@ bool WinRtRunnerHelper::waitForStarted(int msecs)
return m_process->waitForStarted(msecs);
}
-void WinRtRunnerHelper::setDebugRunControl(Debugger::DebuggerRunControl *runControl)
+void WinRtRunnerHelper::setDebugRunControl(ProjectExplorer::RunControl *runControl)
{
- m_debugMessenger = runControl->toolRunner();
+ m_debugMessenger = qobject_cast<Debugger::DebuggerRunTool *>(runControl->toolRunner());
m_messenger = runControl;
}
diff --git a/src/plugins/winrt/winrtrunnerhelper.h b/src/plugins/winrt/winrtrunnerhelper.h
index 19563669c5..b5b0536acc 100644
--- a/src/plugins/winrt/winrtrunnerhelper.h
+++ b/src/plugins/winrt/winrtrunnerhelper.h
@@ -36,11 +36,7 @@
namespace Utils { class QtcProcess; }
namespace ProjectExplorer { class RunControl; }
-
-namespace Debugger {
-class DebuggerRunControl;
-class DebuggerRunTool;
-}
+namespace Debugger { class DebuggerRunTool; }
namespace WinRt {
namespace Internal {
@@ -60,7 +56,7 @@ public:
void stop();
bool waitForStarted(int msecs = 10000);
- void setDebugRunControl(Debugger::DebuggerRunControl *runControl);
+ void setDebugRunControl(ProjectExplorer::RunControl *runControl);
signals:
void started();