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
QQmlPropertyBinding Class Reference

#include <qqmlpropertybinding_p.h>

Inheritance diagram for QQmlPropertyBinding:
Collaboration diagram for QQmlPropertyBinding:

Public Member Functions

QQmlPropertyBindingJSjsExpression ()
QQmlPropertyBindingJS const * jsExpression () const
bool hasDependencies () const
Public Member Functions inherited from QQmlPropertyBindingBase
BindingKind bindingKind () const
bool isUndefined () const
Public Member Functions inherited from QPropertyBindingPrivate
bool isUpdating ()
void setSticky (bool keep=true)
bool isSticky ()
void scheduleNotify ()
 QPropertyBindingPrivate (QMetaType metaType, const QtPrivate::BindingFunctionVTable *vtable, const QPropertyBindingSourceLocation &location, bool isQQmlPropertyBinding=false)
 ~QPropertyBindingPrivate ()
void setProperty (QUntypedPropertyData *propertyPtr)
void setStaticObserver (QtPrivate::QPropertyObserverCallback callback, QtPrivate::QPropertyBindingWrapper bindingWrapper)
void prependObserver (QPropertyObserverPointer observer)
QPropertyObserverPointer takeObservers ()
void clearDependencyObservers ()
Q_ALWAYS_INLINE QPropertyObserverPointer allocateDependencyObserver ()
QPropertyObserverPointer allocateDependencyObserver_slow ()
QPropertyBindingSourceLocation sourceLocation () const
QPropertyBindingError bindingError () const
QMetaType valueMetaType () const
void unlinkAndDeref ()
bool evaluateRecursive (PendingBindingObserverList &bindingObservers, QBindingStatus *status=nullptr)
Q_ALWAYS_INLINE bool evaluateRecursive_inline (PendingBindingObserverList &bindingObservers, QBindingStatus *status)
void notifyNonRecursive (const PendingBindingObserverList &bindingObservers)
NotificationState notifyNonRecursive ()
void setError (QPropertyBindingError &&e)
void detachFromProperty ()
bool hasCustomVTable () const
bool isQmlBinding () const
Public Member Functions inherited from QtPrivate::RefCounted
int refCount () const
void addRef ()
bool deref ()

Static Public Member Functions

static QUntypedPropertyBinding create (const QQmlPropertyData *pd, QV4::Function *function, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt, QV4::ExecutionContext *scope, QObject *target, QQmlPropertyIndex targetIndex)
static QUntypedPropertyBinding create (QMetaType propertyType, QV4::Function *function, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt, QV4::ExecutionContext *scope, QObject *target, QQmlPropertyIndex targetIndex)
static QUntypedPropertyBinding createFromCodeString (const QQmlPropertyData *property, const QString &str, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt, const QString &url, quint16 lineNumber, QObject *target, QQmlPropertyIndex targetIndex)
static QUntypedPropertyBinding createFromScriptString (const QQmlPropertyData *property, const QQmlScriptString &script, QObject *obj, QQmlContext *ctxt, QObject *target, QQmlPropertyIndex targetIndex)
static QUntypedPropertyBinding createFromBoundFunction (const QQmlPropertyData *pd, QV4::BoundFunction *function, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt, QV4::ExecutionContext *scope, QObject *target, QQmlPropertyIndex targetIndex)
static bool isUndefined (const QUntypedPropertyBinding &binding)
static bool isUndefined (const QPropertyBindingPrivate *binding)
template<QMetaType::Type type>
static bool doEvaluate (QMetaType metaType, QUntypedPropertyData *dataPtr, void *f)
Static Public Member Functions inherited from QPropertyBindingPrivate
static constexpr size_t getSizeEnsuringAlignment ()
static QPropertyBindingPrivateget (const QUntypedPropertyBinding &binding)
static QUntypedPropertyBinding makeUntyped (QPropertyBindingPrivate *d)
static QPropertyBindingPrivatecurrentlyEvaluatingBinding ()
static void destroyAndFreeMemory (QPropertyBindingPrivate *priv)

Friends

class QQmlPropertyBindingJS

Additional Inherited Members

Public Types inherited from QQmlPropertyBindingBase
enum class  HasBoundFunction : bool { No = false , Yes = true }
enum class  IsUndefined : bool { No = false , Yes = true }
enum class  BindingKind : quint8 { JavaScript = 0 , PropertyToProperty = 1 }
Public Types inherited from QPropertyBindingPrivate
enum  NotificationState : bool { Delayed , Sent }
Public Attributes inherited from QPropertyBindingPrivate
size_t dependencyObserverCount = 0
Protected Types inherited from QPropertyBindingPrivate
using DeclarativeErrorCallback = void(*)(QPropertyBindingPrivate *)
Protected Member Functions inherited from QQmlPropertyBindingBase
 QQmlPropertyBindingBase (QObject *target, QQmlPropertyIndex targetIndex, QMetaType targetMetaType, const QtPrivate::BindingFunctionVTable *vtable, BindingKind bindingKind, HasBoundFunction hasBoundFunction=HasBoundFunction::No)
QObjecttarget () const
QQmlPropertyIndex targetIndex () const
bool hasBoundFunction () const
void setIsUndefined (bool isUndefined)
Protected Attributes inherited from QPropertyBindingPrivate
QUntypedPropertyDatapropertyDataPtr = nullptr
union { 
   QPropertyBindingSourceLocation   location 
   struct { 
      std::byte   declarativeExtraData [sizeof(QPropertyBindingSourceLocation)
         - sizeof(DeclarativeErrorCallback)] 
      DeclarativeErrorCallback   errorCallBack 
   } 
}; 

Detailed Description

Definition at line 59 of file qqmlpropertybinding_p.h.

Member Function Documentation

◆ create() [1/2]

QUntypedPropertyBinding QQmlPropertyBinding::create ( const QQmlPropertyData * pd,
QV4::Function * function,
QObject * obj,
const QQmlRefPointer< QQmlContextData > & ctxt,
QV4::ExecutionContext * scope,
QObject * target,
QQmlPropertyIndex targetIndex )
static

Definition at line 24 of file qqmlpropertybinding.cpp.

◆ create() [2/2]

QUntypedPropertyBinding QQmlPropertyBinding::create ( QMetaType propertyType,
QV4::Function * function,
QObject * obj,
const QQmlRefPointer< QQmlContextData > & ctxt,
QV4::ExecutionContext * scope,
QObject * target,
QQmlPropertyIndex targetIndex )
static

Definition at line 32 of file qqmlpropertybinding.cpp.

◆ createFromBoundFunction()

QUntypedPropertyBinding QQmlPropertyBinding::createFromBoundFunction ( const QQmlPropertyData * pd,
QV4::BoundFunction * function,
QObject * obj,
const QQmlRefPointer< QQmlContextData > & ctxt,
QV4::ExecutionContext * scope,
QObject * target,
QQmlPropertyIndex targetIndex )
static

Definition at line 106 of file qqmlpropertybinding.cpp.

◆ createFromCodeString()

QUntypedPropertyBinding QQmlPropertyBinding::createFromCodeString ( const QQmlPropertyData * property,
const QString & str,
QObject * obj,
const QQmlRefPointer< QQmlContextData > & ctxt,
const QString & url,
quint16 lineNumber,
QObject * target,
QQmlPropertyIndex targetIndex )
static

Definition at line 53 of file qqmlpropertybinding.cpp.

◆ createFromScriptString()

QUntypedPropertyBinding QQmlPropertyBinding::createFromScriptString ( const QQmlPropertyData * property,
const QQmlScriptString & script,
QObject * obj,
QQmlContext * ctxt,
QObject * target,
QQmlPropertyIndex targetIndex )
static

Definition at line 68 of file qqmlpropertybinding.cpp.

◆ doEvaluate()

template<QMetaType::Type type>
bool QQmlPropertyBinding::doEvaluate ( QMetaType metaType,
QUntypedPropertyData * dataPtr,
void * f )
inlinestatic

Definition at line 122 of file qqmlpropertybinding_p.h.

◆ hasDependencies()

bool QQmlPropertyBinding::hasDependencies ( ) const
inline

Definition at line 129 of file qqmlpropertybinding_p.h.

◆ isUndefined() [1/2]

bool QQmlPropertyBinding::isUndefined ( const QPropertyBindingPrivate * binding)
inlinestatic

Definition at line 114 of file qqmlpropertybinding_p.h.

◆ isUndefined() [2/2]

bool QQmlPropertyBinding::isUndefined ( const QUntypedPropertyBinding & binding)
inlinestatic

Definition at line 109 of file qqmlpropertybinding_p.h.

◆ jsExpression() [1/2]

QQmlPropertyBindingJS * QQmlPropertyBinding::jsExpression ( )
inline

Definition at line 73 of file qqmlpropertybinding_p.h.

◆ jsExpression() [2/2]

QQmlPropertyBindingJS const * QQmlPropertyBinding::jsExpression ( ) const
inline

Definition at line 78 of file qqmlpropertybinding_p.h.

◆ QQmlPropertyBindingJS

friend class QQmlPropertyBindingJS
friend

Definition at line 62 of file qqmlpropertybinding_p.h.


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