forked from qt-creator/qt-creator
debugger: simplify DebuggerEngine construction
The master engine pointer can be given later. Change-Id: I4d72679dcbd5fe7291067a5e78c984d26cc187aa Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
@@ -54,9 +54,6 @@ enum { debug = 0 };
|
||||
|
||||
const int ConnectionWaitTimeMs = 5000;
|
||||
|
||||
QmlEngine *createQmlEngine(const DebuggerStartParameters &,
|
||||
DebuggerEngine *masterEngine);
|
||||
|
||||
DebuggerEngine *createQmlCppEngine(const DebuggerStartParameters &sp,
|
||||
QString *errorMessage)
|
||||
{
|
||||
@@ -74,32 +71,17 @@ DebuggerEngine *createQmlCppEngine(const DebuggerStartParameters &sp,
|
||||
//
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
class QmlCppEnginePrivate : public QObject
|
||||
class QmlCppEnginePrivate
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
QmlCppEnginePrivate(QmlCppEngine *parent,
|
||||
const DebuggerStartParameters &sp);
|
||||
~QmlCppEnginePrivate() {}
|
||||
QmlCppEnginePrivate() {}
|
||||
|
||||
private:
|
||||
friend class QmlCppEngine;
|
||||
QmlCppEngine *q;
|
||||
QmlEngine *m_qmlEngine;
|
||||
DebuggerEngine *m_cppEngine;
|
||||
DebuggerEngine *m_activeEngine;
|
||||
};
|
||||
|
||||
|
||||
QmlCppEnginePrivate::QmlCppEnginePrivate(QmlCppEngine *parent,
|
||||
const DebuggerStartParameters &sp)
|
||||
: q(parent), m_qmlEngine(createQmlEngine(sp, q)),
|
||||
m_cppEngine(0), m_activeEngine(0)
|
||||
{
|
||||
setObjectName(QLatin1String("QmlCppEnginePrivate"));
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// QmlCppEngine
|
||||
@@ -107,10 +89,14 @@ QmlCppEnginePrivate::QmlCppEnginePrivate(QmlCppEngine *parent,
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
QmlCppEngine::QmlCppEngine(const DebuggerStartParameters &sp, QString *errorMessage)
|
||||
: DebuggerEngine(sp), d(new QmlCppEnginePrivate(this, sp))
|
||||
: DebuggerEngine(sp)
|
||||
{
|
||||
setObjectName(QLatin1String("QmlCppEngine"));
|
||||
d->m_cppEngine = DebuggerRunControlFactory::createEngine(sp.firstSlaveEngineType, sp, this, errorMessage);
|
||||
d = new QmlCppEnginePrivate;
|
||||
d->m_qmlEngine = new QmlEngine(sp);
|
||||
d->m_qmlEngine->setMasterEngine(this);
|
||||
d->m_cppEngine = DebuggerRunControlFactory::createEngine(sp.firstSlaveEngineType, sp, errorMessage);
|
||||
d->m_cppEngine->setMasterEngine(this);
|
||||
if (!d->m_cppEngine) {
|
||||
*errorMessage = tr("The slave debugging engine required for combined QML/C++-Debugging could not be created: %1").arg(*errorMessage);
|
||||
return;
|
||||
@@ -831,5 +817,3 @@ void QmlCppEngine::setActiveEngine(DebuggerEngine *engine)
|
||||
|
||||
} // namespace Internal
|
||||
} // namespace Debugger
|
||||
|
||||
#include "qmlcppengine.moc"
|
||||
|
||||
Reference in New Issue
Block a user