diff options
Diffstat (limited to 'src/qml/qml/qqmlvme.cpp')
-rw-r--r-- | src/qml/qml/qqmlvme.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/qml/qml/qqmlvme.cpp b/src/qml/qml/qqmlvme.cpp index 8198eeca66..c34b922ab7 100644 --- a/src/qml/qml/qqmlvme.cpp +++ b/src/qml/qml/qqmlvme.cpp @@ -91,6 +91,8 @@ using namespace QQmlVMETypes; goto exceptionExit; \ } +bool QQmlVME::s_enableComponentComplete = true; + void QQmlVME::init(QQmlContextData *ctxt, QQmlCompiledData *comp, int start, QQmlContextData *creation) { @@ -1326,7 +1328,7 @@ QQmlContextData *QQmlVME::complete(const Interrupt &interrupt) bindValues.deallocate(); } - if (!QQmlEnginePrivate::designerMode()) { // the qml designer does the component complete later + if (componentCompleteEnabled()) { // the qml designer does the component complete later QQmlTrace trace("VME Component Complete"); while (!parserStatus.isEmpty()) { QQmlParserStatus *status = parserStatus.pop(); @@ -1390,6 +1392,21 @@ QQmlContextData *QQmlVME::complete(const Interrupt &interrupt) return rv; } +void QQmlVME::enableComponentComplete() +{ + s_enableComponentComplete = true; +} + +void QQmlVME::disableComponentComplete() +{ + s_enableComponentComplete = false; +} + +bool QQmlVME::componentCompleteEnabled() +{ + return s_enableComponentComplete; +} + void QQmlVME::blank(QFiniteStack<QQmlAbstractBinding *> &bs) { for (int ii = 0; ii < bs.count(); ++ii) { |