Implementation class for BindingHostConcept. More...
#include <kanzi/core.ui/binding/binding_host_concept_impl.hpp>
Public Member Functions | |
void | addBindingRuntime (AbstractBindingRuntimeSharedPtr entry, shared_ptr< void > owner) |
Adds an already-created binding runtime to this binding host. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyValuePrecedence precedence) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType) |
Wrapper for setting a binding. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding, shared_ptr< TDerivedClass > templateRoot) |
Sets a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setBinding (AbstractBindingSharedPtr binding) |
Wrapper for setting a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Sets a binding to a certain property. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence) |
Wrapper for setting a binding with owner. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType) |
Wrapper for setting a binding with owner. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, shared_ptr< TDerivedClass > templateRoot) |
Sets a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner) |
Wrapper for setting a binding with no target. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBinding (AbstractBindingSharedPtr binding, shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBinding (AbstractBindingSharedPtr binding, AbstractPropertyType propertyType) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Sets a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType, PropertyField field) |
Wrapper for setting a modifier binding. More... | |
AbstractBindingRuntimeSharedPtr | setModifierBindingWithOwner (AbstractBindingSharedPtr binding, shared_ptr< void > owner, AbstractPropertyType propertyType) |
Wrapper for setting a modifier binding. More... | |
![]() | |
BindingRuntimeConstIterator | beginBindingRuntimes () const |
Returns an iterator to the beginning of binding runtimes. More... | |
BindingRuntimeConstIterator | endBindingRuntimes () const |
Returns an iterator to the end of binding runtimes. More... | |
AbstractBindingRuntimeSharedPtr | getBindingRuntime (size_t idx) |
Gets binding by index. More... | |
size_t | getBindingRuntimeCount () const |
Gets the number of binding runtimes added to this node. More... | |
void | removeAllBindings () |
Removes all binding runtimes. More... | |
void | removeBinding (AbstractBindingRuntime &bindingRuntime) |
Removes a binding runtime added earlier. More... | |
void | removeBindingsWithOwner (shared_ptr< void > owner) |
Removes all binding runtimes with the specified owner. More... | |
Protected Member Functions | |
BindingTargetRuntimePtr | createModifierBindingTarget (shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field) |
Creates a property modifier binding target for given combination of property type and field. More... | |
BindingTargetRuntimePtr | createValueSourceBindingTarget (shared_ptr< TDerivedClass > templateRoot, AbstractPropertyType propertyType, PropertyField field, PropertyValuePrecedence precedence, bool reuseAllowed) |
Creates a value source binding target for given combination of property type and field. More... | |
TDerivedClass * | getThisObject () |
Internal accessor for the Curiously Recurring Template Pattern. More... | |
const TDerivedClass * | getThisObject () const |
Internal accessor for the Curiously Recurring Template Pattern. More... | |
![]() | |
void | attachBindings () |
Attach all bindings stored in this object. More... | |
void | detachBindings () |
Detach bindings. More... | |
Additional Inherited Members | |
![]() | |
using | BindingHostConceptSharedPtr = shared_ptr< BindingHostConcept > |
Binding host concept shared pointer type. More... | |
using | BindingRuntimeConstIterator = BindingRuntimeContainer::const_iterator |
Const iterator for binding runtimes. More... | |
using | BindingRuntimeContainer = vector< AbstractBindingRuntimeSharedPtr > |
Container for binding runtimes. More... | |
using | BindingRuntimeIterator = BindingRuntimeContainer::iterator |
Iterator for binding runtimes. More... | |
![]() | |
BindingRuntimeContainer | m_bindingRuntimes |
Bindings in this object. More... | |
Implementation class for BindingHostConcept.
Specifies interface to set bindings to the properties while adding them to the binding host.
Classes using bindings must inherit this class while specializing with their class name.
|
inline |
Sets a binding to a certain property.
Using PropertyValuePrecedenceLocal erases earlier local value or binding to the property.
binding | Binding to set. |
owner | Owner shared pointer for the binding. |
templateRoot | Overriding template root for the binding. |
propertyType | Target property type. |
field | Property field. |
precedence | Precedence of the value source binding. |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Sets a modifier binding.
As opposed to value source created by setBinding(), creates a property modifier binding.
binding | Binding to set. |
owner | Owner shared pointer for the binding. |
templateRoot | Overriding template root for the binding. |
propertyType | Target property type. |
field | Property field. |
|
inline |
Wrapper for setting a modifier binding.
As opposed to value source created by setBinding(), creates a property modifier binding.
binding | Binding to set. |
owner | Owner shared pointer for the binding. |
propertyType | Target property type. |
field | Property field. |
|
inline |
Wrapper for setting a modifier binding.
As opposed to value source created by setBinding(), creates a property modifier binding.
binding | Binding to set. |
owner | Owner shared pointer for the binding. |
propertyType | Target property type. |
|
inline |
Wrapper for setting a modifier binding.
As opposed to value source created by setBinding(), creates a property modifier binding.
binding | Binding to set. |
templateRoot | Overriding template root for the binding. |
propertyType | Target property type. |
field | Property field. |
|
inline |
Wrapper for setting a modifier binding.
As opposed to value source created by setBinding(), creates a property modifier binding.
binding | Binding to set. |
propertyType | Target property type. |
field | Property field. |
|
inline |
Wrapper for setting a modifier binding.
As opposed to value source created by setBinding(), creates a property modifier binding. Whole property is used.
binding | Binding to set. |
propertyType | Target property type. |
|
inline |
Adds an already-created binding runtime to this binding host.
This is an internal function that is only exposed in the public interface for use in tests. Do not call this function. Use setBinding() or setModifierBinding() instead.
entry | Binding runtime to add. |
owner | Owner shared pointer for the binding. |
|
inlineprotected |
Internal accessor for the Curiously Recurring Template Pattern.
|
inlineprotected |
Internal accessor for the Curiously Recurring Template Pattern.
|
inlineprotected |
Creates a property modifier binding target for given combination of property type and field.
templateRoot | Overriding template root for the binding. |
propertyType | Target property type. |
field | Property field. |
|
inlineprotected |
Creates a value source binding target for given combination of property type and field.
templateRoot | Overriding template root for the binding. |
propertyType | Target property type. |
field | Property field. |
precedence | Property value precedence for value source binding target. |
reuseAllowed | Whether reuse of the installed value source is allowed by other functionality, such as setProperty. |