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
QQmlAbstractBinding Class Referenceabstract

#include <qqmlabstractbinding_p.h>

Inheritance diagram for QQmlAbstractBinding:
Collaboration diagram for QQmlAbstractBinding:

Classes

struct  RefCount

Public Types

enum  Kind { ValueTypeProxy , QmlBinding , PropertyToPropertyBinding }
enum  State { Disabled = 0 , AddedToObject = 1 , BindingEnabled = 2 , UpdatingBinding = 3 }
enum  TargetTag { NoTargetTag = 0x0 , CanUseAccessor = 0x1 , IsSticky = 0x2 }
typedef QExplicitlySharedDataPointer< QQmlAbstractBindingPtr

Public Member Functions

virtual ~QQmlAbstractBinding ()
virtual QString expression () const
virtual Kind kind () const =0
QQmlPropertyIndex targetPropertyIndex () const
QObjecttargetObject () const
void setTarget (const QQmlProperty &)
bool setTarget (QObject *, const QQmlPropertyData &, const QQmlPropertyData *valueType)
bool setTarget (QObject *, int coreIndex, bool coreIsAlias, int valueTypeIndex)
virtual void setEnabled (bool e, QQmlPropertyData::WriteFlags f=QQmlPropertyData::DontRemoveBinding)=0
void addToObject ()
 Add this binding to object.
void removeFromObject ()
 Remove the binding from the object.
virtual void printBindingLoopError (const QQmlProperty &prop)
QQmlAbstractBindingnextBinding () const
bool canUseAccessor () const
void setCanUseAccessor (bool canUseAccessor)
bool isSticky () const
void setSticky (bool isSticky)

Public Attributes

RefCount ref

Protected Member Functions

 QQmlAbstractBinding ()
void setAddedToObject (bool v)
bool isAddedToObject () const
void setNextBinding (QQmlAbstractBinding *)
void getPropertyData (const QQmlPropertyData **propertyData, QQmlPropertyData *valueTypeData) const
bool updatingFlag () const
void setUpdatingFlag (bool)
bool enabledFlag () const
void setEnabledFlag (bool)
void updateCanUseAccessor ()

Protected Attributes

QQmlPropertyIndex m_targetIndex
QTaggedPointer< QObject, TargetTags > m_target
QTaggedPointer< QQmlAbstractBinding, Statem_nextBinding

Friends

class QQmlAnyBinding
class QQmlData
class QQmlValueTypeProxyBinding
class QQmlObjectCreator

Detailed Description

Definition at line 28 of file qqmlabstractbinding_p.h.

Member Typedef Documentation

◆ Ptr

Member Enumeration Documentation

◆ Kind

Enumerator
ValueTypeProxy 
QmlBinding 
PropertyToPropertyBinding 

Definition at line 34 of file qqmlabstractbinding_p.h.

◆ State

Enumerator
Disabled 
AddedToObject 
BindingEnabled 
UpdatingBinding 

Definition at line 89 of file qqmlabstractbinding_p.h.

◆ TargetTag

Enumerator
NoTargetTag 
CanUseAccessor 
IsSticky 

Definition at line 96 of file qqmlabstractbinding_p.h.

Constructor & Destructor Documentation

◆ QQmlAbstractBinding()

QT_BEGIN_NAMESPACE QQmlAbstractBinding::QQmlAbstractBinding ( )
protected

Definition at line 13 of file qqmlabstractbinding.cpp.

◆ ~QQmlAbstractBinding()

QQmlAbstractBinding::~QQmlAbstractBinding ( )
virtual

Definition at line 19 of file qqmlabstractbinding.cpp.

Member Function Documentation

◆ addToObject()

void QQmlAbstractBinding::addToObject ( )

Add this binding to object.

This transfers ownership of the binding to the object, marks the object's property as being bound.

However, it does not enable the binding itself or call update() on it.

Definition at line 36 of file qqmlabstractbinding.cpp.

◆ canUseAccessor()

bool QQmlAbstractBinding::canUseAccessor ( ) const
inline

Definition at line 70 of file qqmlabstractbinding_p.h.

◆ enabledFlag()

bool QQmlAbstractBinding::enabledFlag ( ) const
inlineprotected

Definition at line 184 of file qqmlabstractbinding_p.h.

◆ expression()

QString QQmlAbstractBinding::expression ( ) const
virtual

Reimplemented in QQmlBinding.

Definition at line 281 of file qqmlabstractbinding.cpp.

◆ getPropertyData()

void QQmlAbstractBinding::getPropertyData ( const QQmlPropertyData ** propertyData,
QQmlPropertyData * valueTypeData ) const
protected

Definition at line 162 of file qqmlabstractbinding.cpp.

◆ isAddedToObject()

bool QQmlAbstractBinding::isAddedToObject ( ) const
inlineprotected

Definition at line 155 of file qqmlabstractbinding_p.h.

◆ isSticky()

bool QQmlAbstractBinding::isSticky ( ) const
inline

Definition at line 75 of file qqmlabstractbinding_p.h.

◆ kind()

virtual Kind QQmlAbstractBinding::kind ( ) const
pure virtual

◆ nextBinding()

QQmlAbstractBinding * QQmlAbstractBinding::nextBinding ( ) const
inline

Definition at line 160 of file qqmlabstractbinding_p.h.

◆ printBindingLoopError()

void QQmlAbstractBinding::printBindingLoopError ( const QQmlProperty & prop)
virtual

Reimplemented in QQmlBinding.

Definition at line 157 of file qqmlabstractbinding.cpp.

◆ removeFromObject()

void QQmlAbstractBinding::removeFromObject ( )

Remove the binding from the object.

Definition at line 91 of file qqmlabstractbinding.cpp.

◆ setAddedToObject()

void QQmlAbstractBinding::setAddedToObject ( bool v)
inlineprotected

Definition at line 150 of file qqmlabstractbinding_p.h.

◆ setCanUseAccessor()

void QQmlAbstractBinding::setCanUseAccessor ( bool canUseAccessor)
inline

Definition at line 72 of file qqmlabstractbinding_p.h.

◆ setEnabled()

virtual void QQmlAbstractBinding::setEnabled ( bool e,
QQmlPropertyData::WriteFlags f = QQmlPropertyData::DontRemoveBinding )
pure virtual

◆ setEnabledFlag()

void QQmlAbstractBinding::setEnabledFlag ( bool v)
inlineprotected

Definition at line 189 of file qqmlabstractbinding_p.h.

◆ setNextBinding()

void QQmlAbstractBinding::setNextBinding ( QQmlAbstractBinding * b)
inlineprotected

Definition at line 165 of file qqmlabstractbinding_p.h.

◆ setSticky()

void QQmlAbstractBinding::setSticky ( bool isSticky)
inline

Definition at line 76 of file qqmlabstractbinding_p.h.

◆ setTarget() [1/3]

void QQmlAbstractBinding::setTarget ( const QQmlProperty & prop)

Definition at line 196 of file qqmlabstractbinding.cpp.

◆ setTarget() [2/3]

bool QQmlAbstractBinding::setTarget ( QObject * object,
const QQmlPropertyData & core,
const QQmlPropertyData * valueType )

Definition at line 202 of file qqmlabstractbinding.cpp.

◆ setTarget() [3/3]

bool QQmlAbstractBinding::setTarget ( QObject * object,
int coreIndex,
bool coreIsAlias,
int valueTypeIndex )

Definition at line 226 of file qqmlabstractbinding.cpp.

◆ setUpdatingFlag()

void QQmlAbstractBinding::setUpdatingFlag ( bool v)
inlineprotected

Definition at line 179 of file qqmlabstractbinding_p.h.

◆ targetObject()

QObject * QQmlAbstractBinding::targetObject ( ) const
inline

Definition at line 55 of file qqmlabstractbinding_p.h.

◆ targetPropertyIndex()

QQmlPropertyIndex QQmlAbstractBinding::targetPropertyIndex ( ) const
inline

Definition at line 51 of file qqmlabstractbinding_p.h.

◆ updateCanUseAccessor()

void QQmlAbstractBinding::updateCanUseAccessor ( )
protected

Definition at line 187 of file qqmlabstractbinding.cpp.

◆ updatingFlag()

bool QQmlAbstractBinding::updatingFlag ( ) const
inlineprotected

Definition at line 174 of file qqmlabstractbinding_p.h.

◆ QQmlAnyBinding

friend class QQmlAnyBinding
friend

Definition at line 30 of file qqmlabstractbinding_p.h.

◆ QQmlData

friend class QQmlData
friend

Definition at line 104 of file qqmlabstractbinding_p.h.

◆ QQmlObjectCreator

friend class QQmlObjectCreator
friend

Definition at line 106 of file qqmlabstractbinding_p.h.

◆ QQmlValueTypeProxyBinding

friend class QQmlValueTypeProxyBinding
friend

Definition at line 105 of file qqmlabstractbinding_p.h.

Member Data Documentation

◆ m_nextBinding

QTaggedPointer<QQmlAbstractBinding, State> QQmlAbstractBinding::m_nextBinding
protected

Definition at line 128 of file qqmlabstractbinding_p.h.

◆ m_target

QTaggedPointer<QObject, TargetTags> QQmlAbstractBinding::m_target
protected

Definition at line 125 of file qqmlabstractbinding_p.h.

◆ m_targetIndex

QQmlPropertyIndex QQmlAbstractBinding::m_targetIndex
protected

Definition at line 122 of file qqmlabstractbinding_p.h.

◆ ref

RefCount QQmlAbstractBinding::ref

Definition at line 85 of file qqmlabstractbinding_p.h.


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