Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
GenericBinding< StaticPropType > Class Template Reference
+ Inheritance diagram for GenericBinding< StaticPropType >:
+ Collaboration diagram for GenericBinding< StaticPropType >:

Protected Member Functions

Q_ALWAYS_INLINE bool write (void *result, QMetaType type, bool isUndefined, QQmlPropertyData::WriteFlags flags) override final
 
Q_ALWAYS_INLINE bool write (const QV4::Value &result, bool isUndefined, QQmlPropertyData::WriteFlags flags) override final
 
template<typename T >
Q_ALWAYS_INLINE bool doStore (T value, const QQmlPropertyData *pd, QQmlPropertyData::WriteFlags flags) const
 
- Protected Member Functions inherited from QQmlBinding
virtual void doUpdate (const DeleteWatcher &watcher, QQmlPropertyData::WriteFlags flags, QV4::Scope &scope)
 
int getPropertyType () const
 
bool slowWrite (const QQmlPropertyData &core, const QQmlPropertyData &valueTypeData, const QV4::Value &result, bool isUndefined, QQmlPropertyData::WriteFlags flags)
 
bool slowWrite (const QQmlPropertyData &core, const QQmlPropertyData &valueTypeData, const void *result, QMetaType resultType, bool isUndefined, QQmlPropertyData::WriteFlags flags)
 
QV4::ReturnedValue evaluate (bool *isUndefined)
 
- Protected Member Functions inherited from QQmlJavaScriptExpression
void createQmlBinding (const QQmlRefPointer< QQmlContextData > &ctxt, QObject *scope, const QString &code, const QString &filename, quint16 line)
 
void setupFunction (QV4::ExecutionContext *qmlContext, QV4::Function *f)
 
void setCompilationUnit (const QQmlRefPointer< QV4::ExecutableCompilationUnit > &compilationUnit)
 
- Protected Member Functions inherited from QQmlAbstractBinding
 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 ()
 

Additional Inherited Members

- Public Types inherited from QQmlBinding
enum  { Invalid = -1 }
 
typedef QExplicitlySharedDataPointer< QQmlBindingPtr
 
typedef int Identifier
 
- Public Types inherited from QQmlAbstractBinding
enum  Kind { ValueTypeProxy , QmlBinding , PropertyToPropertyBinding }
 
enum  TargetTag { NoTargetTag = 0x0 , UpdatingBinding = 0x1 , BindingEnabled = 0x2 }
 
enum  NextBindingTag { NoBindingTag = 0x0 , AddedToObject = 0x1 , CanUseAccessor = 0x2 }
 
typedef QExplicitlySharedDataPointer< QQmlAbstractBindingPtr
 
- Public Member Functions inherited from QQmlBinding
Kind kind () const final
 
 ~QQmlBinding () override
 
bool mustCaptureBindableProperty () const final
 
void refresh () override
 
void setEnabled (bool, QQmlPropertyData::WriteFlags flags=QQmlPropertyData::DontRemoveBinding) override
 
QString expression () const override
 
void update (QQmlPropertyData::WriteFlags flags=QQmlPropertyData::DontRemoveBinding)
 
QVariant evaluate ()
 
bool evaluate (void *result, QMetaType type)
 
void expressionChanged () override
 
QQmlSourceLocation sourceLocation () const override
 
void setSourceLocation (const QQmlSourceLocation &location)
 
void setBoundFunction (QV4::BoundFunction *boundFunction)
 
bool hasBoundFunction () const
 
QVector< QQmlPropertydependencies () const
 
virtual bool hasDependencies () const
 
- Public Member Functions inherited from QQmlJavaScriptExpression
 QQmlJavaScriptExpression ()
 
virtual ~QQmlJavaScriptExpression ()
 
virtual QString expressionIdentifier () const
 
QV4::ReturnedValue evaluate (bool *isUndefined)
 
QV4::ReturnedValue evaluate (QV4::CallData *callData, bool *isUndefined)
 
bool evaluate (void **a, const QMetaType *types, int argc)
 
bool notifyOnValueChanged () const
 
void setNotifyOnValueChanged (bool v)
 
void resetNotifyOnValueChanged ()
 
QObjectscopeObject () const
 
void setScopeObject (QObject *v)
 
bool hasContext () const
 
bool hasValidContext () const
 
QQmlContextpublicContext () const
 
QQmlRefPointer< QQmlContextDatacontext () const
 
void setContext (const QQmlRefPointer< QQmlContextData > &context)
 
void insertIntoList (QQmlJavaScriptExpression **listHead)
 
QV4::Functionfunction () const
 
bool hasError () const
 
bool hasDelayedError () const
 
QQmlError error (QQmlEngine *) const
 
void clearError ()
 
void clearActiveGuards ()
 
QQmlDelayedErrordelayedError ()
 
QQmlEngineengine () const
 
bool hasUnresolvedNames () const
 
bool needsPropertyChangeTrigger (QObject *target, int propertyIndex)
 
QPropertyChangeTriggerallocatePropertyChangeTrigger (QObject *target, int propertyIndex)
 
- Public Member Functions inherited from QQmlAbstractBinding
virtual ~QQmlAbstractBinding ()
 
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)
 
void addToObject ()
 Add this binding to object.
 
void removeFromObject ()
 Remove the binding from the object.
 
QQmlAbstractBindingnextBinding () const
 
bool canUseAccessor () const
 
void setCanUseAccessor (bool canUseAccessor)
 
- Static Public Member Functions inherited from QQmlBinding
static QQmlBindingcreate (const QQmlPropertyData *, const QQmlScriptString &, QObject *, QQmlContext *)
 
static QQmlBindingcreate (const QQmlPropertyData *, const QString &, QObject *, const QQmlRefPointer< QQmlContextData > &, const QString &url=QString(), quint16 lineNumber=0)
 
static QQmlBindingcreate (const QQmlPropertyData *property, QV4::Function *function, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt, QV4::ExecutionContext *scope)
 
static QQmlBindingcreate (QMetaType propertyType, QV4::Function *function, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt, QV4::ExecutionContext *scope)
 
static QQmlBindingcreateTranslationBinding (const QQmlRefPointer< QV4::ExecutableCompilationUnit > &unit, const QV4::CompiledData::Binding *binding, QObject *obj, const QQmlRefPointer< QQmlContextData > &ctxt)
 
static QQmlBindingcreateTranslationBinding (const QQmlRefPointer< QV4::ExecutableCompilationUnit > &unit, const QQmlRefPointer< QQmlContextData > &ctxt, const QString &propertyName, const QQmlTranslation &translationData, const QQmlSourceLocation &location, QObject *obj)
 
- Static Public Member Functions inherited from QQmlJavaScriptExpression
static QV4::ReturnedValue evalFunction (const QQmlRefPointer< QQmlContextData > &ctxt, QObject *scope, const QString &code, const QString &filename, quint16 line)
 
- Static Public Member Functions inherited from QQmlAbstractBinding
static void printBindingLoopError (const QQmlProperty &prop)
 
- Public Attributes inherited from QQmlAbstractBinding
RefCount ref
 
- Protected Types inherited from QQmlJavaScriptExpression
enum  GuardTag { NoGuardTag , NotifyOnValueChanged }
 
enum  Tag { NoTag , InEvaluationLoop }
 
- Protected Attributes inherited from QQmlJavaScriptExpression
QBiPointer< QObject, DeleteWatcherm_scopeObject
 
QForwardFieldList< QQmlJavaScriptExpressionGuard, &QQmlJavaScriptExpressionGuard::next, GuardTagactiveGuards
 
QTaggedPointer< QQmlDelayedError, Tagm_error
 
TriggerListqpropertyChangeTriggers = nullptr
 
- Protected Attributes inherited from QQmlAbstractBinding
QQmlPropertyIndex m_targetIndex
 
QTaggedPointer< QObject, TargetTags > m_target
 
QTaggedPointer< QQmlAbstractBinding, NextBindingTags > m_nextBinding
 

Detailed Description

template<int StaticPropType>
class GenericBinding< StaticPropType >

Definition at line 192 of file qqmlbinding.cpp.

Member Function Documentation

◆ doStore()

template<int StaticPropType>
template<typename T >
Q_ALWAYS_INLINE bool GenericBinding< StaticPropType >::doStore ( T value,
const QQmlPropertyData * pd,
QQmlPropertyData::WriteFlags flags ) const
inlineprotected

Definition at line 272 of file qqmlbinding.cpp.

References o, QQmlAbstractBinding::targetObject(), and QQmlPropertyData::writeProperty().

+ Here is the call graph for this function:

◆ write() [1/2]

template<int StaticPropType>
Q_ALWAYS_INLINE bool GenericBinding< StaticPropType >::write ( const QV4::Value & result,
bool isUndefined,
QQmlPropertyData::WriteFlags flags )
inlinefinaloverrideprotectedvirtual

Implements QQmlBinding.

Definition at line 218 of file qqmlbinding.cpp.

References QV4::Value::as(), QQmlPropertyData::coreIndex(), QTaggedPointer< T, Tag >::data(), QQmlAbstractBinding::getPropertyData(), QMetaType::id(), QQmlAbstractBinding::m_target, QQmlPropertyData::propType(), Q_ASSERT, Q_LIKELY, QQmlBinding::slowWrite(), QQmlAbstractBinding::targetObject(), and QMetaType::UnknownType.

+ Here is the call graph for this function:

◆ write() [2/2]

template<int StaticPropType>
Q_ALWAYS_INLINE bool GenericBinding< StaticPropType >::write ( void * result,
QMetaType type,
bool isUndefined,
QQmlPropertyData::WriteFlags flags )
inlinefinaloverrideprotectedvirtual

Implements QQmlBinding.

Definition at line 196 of file qqmlbinding.cpp.

References QQmlJavaScriptExpression::engine(), QQmlAbstractBinding::getPropertyData(), QQmlPropertyData::propType(), Q_ASSERT, QQmlBinding::slowWrite(), QQmlAbstractBinding::targetObject(), QMetaType::UnknownType, GenericBinding< StaticPropType >::write(), and QQmlPropertyData::writeProperty().

Referenced by GenericBinding< StaticPropType >::write().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

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