diff options
Diffstat (limited to 'src/corelib/kernel/qbindingstorage.h')
-rw-r--r-- | src/corelib/kernel/qbindingstorage.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/corelib/kernel/qbindingstorage.h b/src/corelib/kernel/qbindingstorage.h index 9a80acc269..e579dbcf9d 100644 --- a/src/corelib/kernel/qbindingstorage.h +++ b/src/corelib/kernel/qbindingstorage.h @@ -65,6 +65,11 @@ struct QBindingStatus QPropertyDelayedNotifications *groupUpdateData = nullptr; }; +namespace QtPrivate { +struct QBindingStatusAccessToken; +Q_AUTOTEST_EXPORT QBindingStatus *getBindingStatus(QBindingStatusAccessToken); +} + struct QBindingStorageData; class Q_CORE_EXPORT QBindingStorage @@ -81,10 +86,13 @@ public: ~QBindingStorage(); bool isEmpty() { return !d; } + bool isValid() const noexcept { return bindingStatus; } + + const QBindingStatus *status(QtPrivate::QBindingStatusAccessToken) const; void registerDependency(const QUntypedPropertyData *data) const { - if (!bindingStatus->currentlyEvaluatingBinding) + if (!bindingStatus || !bindingStatus->currentlyEvaluatingBinding) return; registerDependency_helper(data); } @@ -104,6 +112,7 @@ public: return bindingData_helper(data, create); } private: + void reinitAfterThreadMove(); void clear(); void registerDependency_helper(const QUntypedPropertyData *data) const; // ### Unused, but keep for BC |