Kanzi 3.9.10
kanzi::PropertyModifierBindingTargetRuntime Class Reference

Base class for property modifier binding target runtimes. More...

#include <kanzi/core.ui/binding/property_modifier_binding_target_runtime.hpp>

Inheritance diagram for kanzi::PropertyModifierBindingTargetRuntime:
[legend]

Public Member Functions

PropertyField getPropertyField () const
 Gets a property field.
 
AbstractPropertyType getPropertyType () const
 Gets a property type.
 
- Public Member Functions inherited from kanzi::BindingTargetRuntime
void attachForRead ()
 Attaches the binding target runtime for reading.
 
void attachForWrite ()
 Attaches the binding target runtime for writing.
 
BindingProcessorRuntimeConstIterator beginProcessorRuntimes () const
 Gets an iterator to the beginning of binding processor runtimes.
 
void createBindingProcessorsRuntimes (const AbstractBinding &binding)
 Creates a processor runtime for each BindingProcessor held by the binding parameter.
 
void detach ()
 Detaches binding target runtime.
 
BindingProcessorRuntimeConstIterator endProcessorRuntimes () const
 Gets an iterator to the end of binding processor runtimes.
 
AbstractBindingRuntimegetBindingRuntime () const
 Gets the binding runtime.
 
BindingLookupContextgetLookupContext () const
 Gets the lookup context.
 
bool isConnected ()
 Indicates whether this source is connected.
 
bool read (Variant &value)
 Reads a value from the binding target.
 
void setBindingRuntime (AbstractBindingRuntime &bindingRuntime)
 Sets the binding runtime.
 
bool write (const Variant &value)
 Writes a value to the binding target.
 
virtual ~BindingTargetRuntime ()=default
 Destructor.
 

Static Public Member Functions

static BindingTargetRuntimePtr create (AbstractPropertyType propertyType, PropertyField field, PropertyObject &object)
 Creates a property modifier binding target runtime without a binding target.
 

Protected Member Functions

 PropertyModifierBindingTargetRuntime (AbstractPropertyType propertyType, PropertyField field, PropertyObject &object)
 Constructor.
 
- Protected Member Functions inherited from kanzi::BindingTargetRuntime
virtual void attachForReadOverride ()
 Implementation-dependent attach.
 
virtual void attachForWriteOverride ()=0
 Implementation-dependent attach.
 
 BindingTargetRuntime ()=default
 Constructor.
 
virtual void detachOverride ()=0
 Implementation-dependent detach.
 
virtual bool isConnectedOverride ()=0
 Implementation-dependent connected check.
 
virtual bool readOverride (Variant &value)
 Implementation-dependent read.
 
virtual bool writeOverride (const Variant &value)=0
 Implementation-dependent write.
 

Protected Attributes

PropertyField m_field
 Property field to use.
 
bool m_localReadListenerRequested
 Is local read listener requested?
 
PropertyObjectm_object
 Object the property modifier is installed to.
 
AbstractPropertyType m_propertyType
 Property type to use.
 
- Protected Attributes inherited from kanzi::BindingTargetRuntime
AbstractBindingRuntimem_bindingRuntime
 Abstract binding runtime for this target.
 
BindingProcessorRuntimeContainer m_processorRuntimes
 Binding processors runtimes (for the target, backward direction).
 

Additional Inherited Members

- Public Types inherited from kanzi::BindingTargetRuntime
using BindingProcessorRuntimeConstIterator
 Binding processor iterator type.
 
using BindingProcessorRuntimeContainer
 Binding processor container type.
 

Detailed Description

Base class for property modifier binding target runtimes.

Inherited by type-specialized version.

Kanzi creates a property modifier binding target runtime when you add a modifier binding to a Node or RenderPass using the setModifierBinding() function.

To create a PropertyModifierBindingTargetRuntime for a binding runtime when adding the binding to a Node or RenderPass:

// Calling setModifierBinding() installs the binding runtime as a property modifier.
BindingRuntimeHandle runtime = node->setModifierBinding(binding, Node2D::OpacityProperty);

Setting the property with setProperty() does not remove the modifier, but can alter the value that is being modified. Property modifiers apply in the order of addition: adding a property modifier before setting a modifier binding creates a modifier in front of the binding, and the other way around. You can add multiple property modifier bindings for the same property.

Since
Kanzi 3.7.0

Constructor & Destructor Documentation

◆ PropertyModifierBindingTargetRuntime()

kanzi::PropertyModifierBindingTargetRuntime::PropertyModifierBindingTargetRuntime ( AbstractPropertyType propertyType,
PropertyField field,
PropertyObject & object )
explicitprotected

Constructor.

Parameters
propertyTypeProperty type to use.
fieldProperty field to use.
objectPropertyObject install path.
Since
Kanzi 3.9.6 Changed lookupContext to PropertyObject install path.

Member Function Documentation

◆ create()

static BindingTargetRuntimePtr kanzi::PropertyModifierBindingTargetRuntime::create ( AbstractPropertyType propertyType,
PropertyField field,
PropertyObject & object )
static

Creates a property modifier binding target runtime without a binding target.

Parameters
propertyTypeProperty type to use.
fieldProperty field to use.
objectThe PropertyObject install path.
Returns
The property modifier binding target runtime.
Since
Kanzi 3.9.6 Changed lookupContext to PropertyObject install path.

◆ getPropertyType()

AbstractPropertyType kanzi::PropertyModifierBindingTargetRuntime::getPropertyType ( ) const
inline

Gets a property type.

Required by inheriting classes.

Returns
Property type for this target.

◆ getPropertyField()

PropertyField kanzi::PropertyModifierBindingTargetRuntime::getPropertyField ( ) const
inline

Gets a property field.

Returns
Property field.

Member Data Documentation

◆ m_object

PropertyObject& kanzi::PropertyModifierBindingTargetRuntime::m_object
protected

Object the property modifier is installed to.

◆ m_propertyType

AbstractPropertyType kanzi::PropertyModifierBindingTargetRuntime::m_propertyType
protected

Property type to use.

◆ m_field

PropertyField kanzi::PropertyModifierBindingTargetRuntime::m_field
protected

Property field to use.

◆ m_localReadListenerRequested

bool kanzi::PropertyModifierBindingTargetRuntime::m_localReadListenerRequested
protected

Is local read listener requested?


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