aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2020-06-23 17:25:52 +0200
committerUlf Hermann <ulf.hermann@qt.io>2020-07-02 17:03:24 +0200
commit7814e1dbfd09ead88951d95f72e71f45fd27c920 (patch)
tree6bad033792bffbf03f7bb7611dace1358e8a0a10 /src/plugins
parent974f52fc815f62868ddfe63f7391e3090f96b226 (diff)
Make the qtquick and qtqml plugins optional
We can do the initialization and de-initialization as constructor and destructor functions. Then we don't need to load the plugins. Task-number: QTBUG-84639 Change-Id: I2aeeee7e8d028555e3af91e93518c2c2afd70dbb Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp21
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.h7
2 files changed, 14 insertions, 14 deletions
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp b/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
index 3cf0de74d1..f568b78294 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
+++ b/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.cpp
@@ -432,8 +432,8 @@ void QQmlEngineDebugServiceImpl::buildObjectList(QDataStream &message,
void QQmlEngineDebugServiceImpl::buildStatesList(bool cleanList,
const QList<QPointer<QObject> > &instances)
{
- if (m_statesDelegate)
- m_statesDelegate->buildStatesList(cleanList, instances);
+ if (auto delegate = statesDelegate())
+ delegate->buildStatesList(cleanList, instances);
}
QQmlEngineDebugServiceImpl::QQmlObjectData
@@ -681,8 +681,8 @@ bool QQmlEngineDebugServiceImpl::setBinding(int objectId,
if (property.isValid()) {
bool inBaseState = true;
- if (m_statesDelegate) {
- m_statesDelegate->updateBinding(context, property, expression, isLiteralValue,
+ if (auto delegate = statesDelegate()) {
+ delegate->updateBinding(context, property, expression, isLiteralValue,
filename, line, column, &inBaseState);
}
@@ -707,8 +707,8 @@ bool QQmlEngineDebugServiceImpl::setBinding(int objectId,
} else {
// not a valid property
- if (m_statesDelegate)
- ok = m_statesDelegate->setBindingForInvalidProperty(object, propertyName, expression, isLiteralValue);
+ if (auto delegate = statesDelegate())
+ ok = delegate->setBindingForInvalidProperty(object, propertyName, expression, isLiteralValue);
if (!ok)
qWarning() << "QQmlEngineDebugService::setBinding: unable to set property" << propertyName << "on object" << object;
}
@@ -761,8 +761,8 @@ bool QQmlEngineDebugServiceImpl::resetBinding(int objectId, const QString &prope
return true;
}
- if (m_statesDelegate) {
- m_statesDelegate->resetBindingForInvalidProperty(object, propertyName);
+ if (auto delegate = statesDelegate()) {
+ delegate->resetBindingForInvalidProperty(object, propertyName);
return true;
}
@@ -858,11 +858,6 @@ void QQmlEngineDebugServiceImpl::objectCreated(QJSEngine *engine, QObject *objec
emit messageToClient(name(), rs.data());
}
-void QQmlEngineDebugServiceImpl::setStatesDelegate(QQmlDebugStatesDelegate *delegate)
-{
- m_statesDelegate = delegate;
-}
-
QT_END_NAMESPACE
#include "moc_qqmlenginedebugservice.cpp"
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.h b/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.h
index 741768cd00..a18ff942b6 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.h
+++ b/src/plugins/qmltooling/qmldbg_debugger/qqmlenginedebugservice.h
@@ -99,7 +99,12 @@ public:
void engineAboutToBeRemoved(QJSEngine *) override;
void objectCreated(QJSEngine *, QObject *) override;
- void setStatesDelegate(QQmlDebugStatesDelegate *) override;
+ QQmlDebugStatesDelegate *statesDelegate()
+ {
+ if (!m_statesDelegate)
+ m_statesDelegate = createStatesDelegate();
+ return m_statesDelegate;
+ }
signals:
void scheduleMessage(const QByteArray &);