PropertyTypeChangeFlagEnums
¶
Each property type can have one or more change flags that indicate the effects of changing the value of that property. For example, when the Text property of a Text Block node changes, Kanzi must recalculate the layout of that Text Block, which is why the TextConcept::TextProperty has the PropertyTypeChangeFlagMeasure.
| PropertyTypeChangeFlagFinalTransformation¶ | Use this flag for a property type that affects the final transformation of a node and its descendants. For a 2D node, this flag causes Kanzi to:
For a 3D node, this flag causes Kanzi to:
For example, Node::ActualWidthProperty, Node2D::RenderTransformationProperty, and Node3D::RenderTransformationProperty use this flag. |
| PropertyTypeChangeFlagMeasure¶ | Use this flag for a property type that affects the size of the node as reported by the node itself, or the size and position of the node with respect to other nodes. For a 2D node, this flag causes Kanzi to:
For a 3D node, this flag causes Kanzi to:
For example, properties that set the size, margins, padding, and alignment of a node, use this flag. |
| PropertyTypeChangeFlagParentMeasure¶ | Use this flag for a property type that affects the layout of the parent node of a node. This flag causes Kanzi to set the PropertyTypeChangeFlagMeasure flag on the parent of the node. For example, the DockLayoutConcept::SideProperty, GridLayoutConcept::ColumnProperty, and GridLayoutConcept::RowProperty use this flag. |
| PropertyTypeChangeFlagArrange¶ | Use this flag for a property type that affects the need to arrange the layout of a node. For a 2D node, this flag causes Kanzi to:
For a 3D node, this flag causes Kanzi to:
All property types that have the PropertyTypeChangeFlagMeasure set, run the arrange phase on those nodes whose measurements changed. |
| PropertyTypeChangeFlagRender¶ | Use this flag for a property type that changes the rendering parameters of a 2D node but does not affect the layout. For a 2D node, this flag causes Kanzi to:
For a property type that changes the rendering parameters of a 3D node but does not affect the layout, use PropertyTypeChangeFlagDraw instead of PropertyTypeChangeFlagRender. For example, these properties use the PropertyTypeChangeFlagRender flag:
|
| PropertyTypeChangeFlagDraw¶ | Use this flag for a property type that affects the drawing of a node. This flag causes Kanzi to draw all nodes. For example, most material properties use this flag. |
| PropertyTypeChangeFlagTag¶ | Use this flag for a property types that function as tags that categorize nodes into a group or another. Setting this flag causes Kanzi to re-evaluate node lists related to tagging nodes. Kanzi automatically sets this flag for all tag property types. Since Kanzi 4.0.0 |
| PropertyTypeChangeFlagConstraint¶ | Property type with this flag informs that constraints are in use. |