An instance of a PropertyType represents a single property type in the Kanzi property system. More...
#include <kanzi/core/property/property_type.hpp>
Public Types | |
using | DataType = Type |
using | Descriptor = PropertyTypeDescriptor< Type > |
using | Traits = typename PropertyTypeDescriptor< Type >::Traits |
Public Member Functions | |
Descriptor * | get () const |
uint32_t | getChangeFlags () const |
Gets the change flags for a property type. More... | |
PropertyDataType | getDataType () const |
Gets the data type of a property type. More... | |
Traits::ReturnType | getDefaultValue () const |
Gets the default value of a property type. More... | |
PropertyTypeEditorInfoSharedPtr | getEditorInfo () const |
Gets the editor information of a property type. More... | |
const char * | getName () const |
Gets the fully qualified name of a property type in the form "Class.PropertyType". More... | |
const char * | getUnqualifiedName () const |
Gets the unqualified name of a property type in the form "PropertyType". More... | |
bool | isInherited () const |
Returns whether a property type is inheritable. More... | |
operator AbstractPropertyType () const | |
Converting operator to get AbstractPropertyType instance referring to this PropertyType instance. More... | |
PropertyType (FixedString name) | |
Constructor. More... | |
PropertyType (MetadataGeneratedName name) | |
Constructor. More... | |
PropertyType (FixedString name, DataType defaultValue, uint32_t changeFlags, bool inheritable) | |
Constructor. More... | |
PropertyType (MetadataGeneratedName name, DataType defaultValue, uint32_t changeFlags, bool inheritable) | |
Constructor. More... | |
PropertyType (FixedString name, DataType defaultValue, uint32_t changeFlags, bool inheritable, PropertyTypeEditorInfoSharedPtr editorInfo) | |
Constructor. More... | |
PropertyType (MetadataGeneratedName name, DataType defaultValue, uint32_t changeFlags, bool inheritable, PropertyTypeEditorInfoSharedPtr editorInfo) | |
Constructor. More... | |
~PropertyType () | |
Destructor. More... | |
Protected Member Functions | |
PropertyType () | |
Constructor. More... | |
Friends | |
class | AbstractPropertyType |
class | DynamicPropertyType< Type > |
class | Node |
class | Object |
An instance of a PropertyType represents a single property type in the Kanzi property system.
A property type exists throughout the lifetime of an application, including the property types that you create during the runtime of an application.
To work with the existing property types in the Kanzi property system, use the DynamicPropertyType and AbstractPropertyType classes.
To declare a new property type:
To define a new property type:
To set or get a value of a property type from a node:
To create a property type during application runtime:
using kanzi::PropertyType< Type, typename >::DataType = Type |
using kanzi::PropertyType< Type, typename >::Descriptor = PropertyTypeDescriptor<Type> |
using kanzi::PropertyType< Type, typename >::Traits = typename PropertyTypeDescriptor<Type>::Traits |
|
explicit |
Constructor.
name | Fully qualified name for the property type as a FixedString. |
|
explicit |
Constructor.
name | Fully qualified name for the property type as a MetadataGeneratedName. |
|
explicit |
Constructor.
name | Fully qualified name for the property type as a FixedString. |
defaultValue | The default value for the property type. |
changeFlags | The flags that indicate how changes to the property type value affect the application. |
inheritable | Sets whether this property type is inheritable. Inheritance determines whether nodes can inherit from their ancestor nodes the value of this property type. |
|
explicit |
Constructor.
name | Fully qualified name for the property type as a MetadataGeneratedName. |
defaultValue | The default value for the property type. |
changeFlags | The flags that indicate how changes to the property type value affect the application. |
inheritable | Sets whether this property type is inheritable. Inheritance determines whether nodes can inherit from their ancestor nodes the value of this property type. |
|
explicit |
Constructor.
name | Fully qualified name for the property type as a FixedString. |
defaultValue | The default value for the property type. |
changeFlags | The flags that indicate how changes to the property type value affect the application. |
inheritable | Sets whether this property type is inheritable. Inheritance determines whether nodes can inherit from their ancestor nodes the value of this property type. |
editorInfo | Sets the editor information for this property type that Kanzi Studio uses. |
|
explicit |
Constructor.
name | Fully qualified name for the property type as a MetadataGeneratedName. |
defaultValue | The default value for the property type. |
changeFlags | The flags that indicate how changes to the property type value affect the application. |
inheritable | Sets whether this property type is inheritable. Inheritance determines whether nodes can inherit from their ancestor nodes the value of this property type. |
editorInfo | Sets the editor information for this property type that Kanzi Studio uses. |
kanzi::PropertyType< Type, A >::~PropertyType | ( | ) |
Destructor.
|
explicitprotected |
Constructor.
kanzi::PropertyType< Type, A >::operator AbstractPropertyType | ( | ) | const |
Converting operator to get AbstractPropertyType instance referring to this PropertyType instance.
PropertyType< Type, A >::Traits::ReturnType kanzi::PropertyType< Type, A >::getDefaultValue | ( | ) | const |
Gets the default value of a property type.
When no other value is available, getProperty functions return the default value.
const char * kanzi::PropertyType< Type, A >::getName | ( | ) | const |
Gets the fully qualified name of a property type in the form "Class.PropertyType".
const char * kanzi::PropertyType< Type, A >::getUnqualifiedName | ( | ) | const |
Gets the unqualified name of a property type in the form "PropertyType".
PropertyDataType kanzi::PropertyType< Type, A >::getDataType | ( | ) | const |
Gets the data type of a property type.
The data type of a property type defines the data representation type of each property value. For example, float.
bool kanzi::PropertyType< Type, A >::isInherited | ( | ) | const |
Returns whether a property type is inheritable.
Inheritable property types provide values to all descendant nodes.
uint32_t kanzi::PropertyType< Type, A >::getChangeFlags | ( | ) | const |
Gets the change flags for a property type.
Change flags indicate whether a modification of property value invalidates a particular aspect of a node. For example, when you change the Node::HeightProperty or Node::WidthProperty in a node Kanzi recalculates the layout.
PropertyTypeEditorInfoSharedPtr kanzi::PropertyType< Type, A >::getEditorInfo | ( | ) | const |
Gets the editor information of a property type.
PropertyType< Type, A >::Descriptor * kanzi::PropertyType< Type, A >::get | ( | ) | const |
|
friend |
|
friend |
|
friend |
|
friend |