6#include <QtCore/qhash.h>
7#include <QtQml/qqmlengine.h>
8#include <QtQml/private/qqmldata_p.h>
9#include <QtQml/private/qqmlcomponent_p.h>
10#include <QtQml/private/qqmlobjectcreator_p.h>
22 (*dit)->bindings.remove(propertyIndex);
29 QObject *
object =
property.object();
33 int propertyIndex =
property.index();
50 if (
range.first == bindings.end())
54 state.setCompletePending(
true);
61 std::deque<const QV4::CompiledData::Binding *> reversedBindings;
62 std::copy(
range.first,
range.second, std::front_inserter(reversedBindings));
63 state.creator()->beginPopulateDeferred(deferData->
context);
66 state.creator()->finalizePopulateDeferred();
67 state.appendCreatorErrors();
69 deferredState->push_back(std::move(
state));
84 if (
data && !
data->deferredData.isEmpty() && !
data->wasDeleted(
object) &&
data->context) {
90 delegateState->swap(
state);
91 }
else if (isOwnState) {
96 data->releaseDeferredData();
97 }
else if (isOwnState) {
117 if (
data && !
data->wasDeleted(
object)) {
QPair< iterator, iterator > equal_range(const Key &key)
std::vector< ConstructionState > DeferredState
static void completeDeferred(QQmlEnginePrivate *enginePriv, DeferredState *deferredState)
QQmlRefPointer< QQmlContextData > parent() const
QVector< DeferredData * > deferredData
static QQmlData * get(QObjectPrivate *priv, bool create)
static QQmlEnginePrivate * get(QQmlEngine *e)
The QQmlProperty class abstracts accessing properties on objects created from QML.
void clearDeferredState()
QQmlComponentPrivate::DeferredState * deferredState() const
\macro QT_RESTRICTED_CAST_FROM_ASCII
Combined button and popup list for selecting options.
BindingEvaluationState * suspendCurrentBindingStatus()
void restoreBindingStatus(BindingEvaluationState *status)
static void cancelDeferred(QQmlData *ddata, int propertyIndex)
void completeDeferred(QObject *object, const QString &property, QQuickUntypedDeferredPointer *delegate)
static bool beginDeferred(QQmlEnginePrivate *enginePriv, const QQmlProperty &property, QQmlComponentPrivate::DeferredState *deferredState)
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
static Q_CONSTINIT thread_local QBindingStatus bindingStatus
QScopeGuard< typename std::decay< F >::type > qScopeGuard(F &&f)
[qScopeGuard]
QQmlRefPointer< QQmlContextData > context
QQmlRefPointer< QV4::ExecutableCompilationUnit > compilationUnit
QMultiHash< int, const QV4::CompiledData::Binding * > bindings