Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QtPrivate::QPropertyBindingData Class Reference

#include <qpropertyprivate.h>

+ Collaboration diagram for QtPrivate::QPropertyBindingData:

Public Member Functions

 QPropertyBindingData ()=default
 
 QPropertyBindingData (QPropertyBindingData &&other)
 
QPropertyBindingDataoperator= (QPropertyBindingData &&other)=delete
 
 ~QPropertyBindingData ()
 
bool hasBinding () const
 
bool isNotificationDelayed () const
 
QUntypedPropertyBinding setBinding (const QUntypedPropertyBinding &newBinding, QUntypedPropertyData *propertyDataPtr, QPropertyObserverCallback staticObserverCallback=nullptr, QPropertyBindingWrapper bindingWrapper=nullptr)
 
QPropertyBindingPrivatebinding () const
 
void evaluateIfDirty (const QUntypedPropertyData *) const
 
void removeBinding ()
 
void registerWithCurrentlyEvaluatingBinding (QtPrivate::BindingEvaluationState *currentBinding) const
 
void registerWithCurrentlyEvaluatingBinding () const
 
void notifyObservers (QUntypedPropertyData *propertyDataPtr) const
 
void notifyObservers (QUntypedPropertyData *propertyDataPtr, QBindingStorage *storage) const
 

Static Public Attributes

static constexpr quintptr BindingBit = 0x1
 
static constexpr quintptr DelayedNotificationBit = 0x2
 

Friends

struct QT_PREPEND_NAMESPACE (QPropertyBindingDataPointer)
 
class QT_PREPEND_NAMESPACE (QQmlPropertyBinding)
 
struct QT_PREPEND_NAMESPACE (QPropertyDelayedNotifications)
 
template<typename Class, typename T, auto Offset, auto Setter, auto Signal, auto Getter>
class QT_PREPEND_NAMESPACE (QObjectCompatProperty)
 

Detailed Description

A property normally consists of the actual property value and metadata for the binding system. QPropertyBindingData is the latter part. It stores a pointer to either

  • a (potentially empty) linked list of notifiers, in case there is no binding set,
  • an actual QUntypedPropertyBinding when the property has a binding,
  • or a pointer to QPropertyProxyBindingData when notifications occur inside a grouped update.
See also
QPropertyDelayedNotifications, beginPropertyUpdateGroup

Definition at line 231 of file qpropertyprivate.h.

Constructor & Destructor Documentation

◆ QPropertyBindingData() [1/2]

QtPrivate::QPropertyBindingData::QPropertyBindingData ( )
default

◆ QPropertyBindingData() [2/2]

QPropertyBindingData::QPropertyBindingData ( QPropertyBindingData && other)

Definition at line 534 of file qproperty.cpp.

◆ ~QPropertyBindingData()

QPropertyBindingData::~QPropertyBindingData ( )

Definition at line 468 of file qproperty.cpp.

Member Function Documentation

◆ binding()

QPropertyBindingPrivate * QtPrivate::QPropertyBindingData::binding ( ) const
inline

Definition at line 263 of file qpropertyprivate.h.

◆ evaluateIfDirty()

void QPropertyBindingData::evaluateIfDirty ( const QUntypedPropertyData * ) const

Definition at line 573 of file qproperty.cpp.

◆ hasBinding()

bool QtPrivate::QPropertyBindingData::hasBinding ( ) const
inline

Definition at line 255 of file qpropertyprivate.h.

◆ isNotificationDelayed()

bool QtPrivate::QPropertyBindingData::isNotificationDelayed ( ) const
inline

Definition at line 256 of file qpropertyprivate.h.

◆ notifyObservers() [1/2]

void QPropertyBindingData::notifyObservers ( QUntypedPropertyData * propertyDataPtr) const

Definition at line 618 of file qproperty.cpp.

◆ notifyObservers() [2/2]

void QPropertyBindingData::notifyObservers ( QUntypedPropertyData * propertyDataPtr,
QBindingStorage * storage ) const

Definition at line 623 of file qproperty.cpp.

◆ operator=()

QPropertyBindingData & QtPrivate::QPropertyBindingData::operator= ( QPropertyBindingData && other)
delete

◆ registerWithCurrentlyEvaluatingBinding() [1/2]

void QPropertyBindingData::registerWithCurrentlyEvaluatingBinding ( ) const

Definition at line 594 of file qproperty.cpp.

◆ registerWithCurrentlyEvaluatingBinding() [2/2]

void QtPrivate::QPropertyBindingData::registerWithCurrentlyEvaluatingBinding ( QtPrivate::BindingEvaluationState * currentBinding) const
inline

Definition at line 280 of file qpropertyprivate.h.

◆ removeBinding()

void QtPrivate::QPropertyBindingData::removeBinding ( )
inline

Definition at line 274 of file qpropertyprivate.h.

◆ setBinding()

QUntypedPropertyBinding QPropertyBindingData::setBinding ( const QUntypedPropertyBinding & newBinding,
QUntypedPropertyData * propertyDataPtr,
QPropertyObserverCallback staticObserverCallback = nullptr,
QtPrivate::QPropertyBindingWrapper guardCallback = nullptr )

Definition at line 482 of file qproperty.cpp.

Friends And Related Symbol Documentation

◆ QT_PREPEND_NAMESPACE [1/4]

template<typename Class, typename T, auto Offset, auto Setter, auto Signal, auto Getter>
class QT_PREPEND_NAMESPACE ( QObjectCompatProperty )
friend

◆ QT_PREPEND_NAMESPACE [2/4]

struct QT_PREPEND_NAMESPACE ( QPropertyBindingDataPointer )
friend

◆ QT_PREPEND_NAMESPACE [3/4]

struct QT_PREPEND_NAMESPACE ( QPropertyDelayedNotifications )
friend

◆ QT_PREPEND_NAMESPACE [4/4]

class QT_PREPEND_NAMESPACE ( QQmlPropertyBinding )
friend

Member Data Documentation

◆ BindingBit

quintptr QtPrivate::QPropertyBindingData::BindingBit = 0x1
inlinestaticconstexpr

Definition at line 251 of file qpropertyprivate.h.

◆ DelayedNotificationBit

quintptr QtPrivate::QPropertyBindingData::DelayedNotificationBit = 0x2
inlinestaticconstexpr

Definition at line 253 of file qpropertyprivate.h.


The documentation for this class was generated from the following files: