Access nodes and resources in a Kanzi Studio project. More...
Inherits PropertyContainer, and ChildContainer.
Inherited by AbstractComposer, AbstractEnginePluginContentType, AbstractMaterialType, AccelerationStructure, Animation, AnimationClipBase, ApplicationConfiguration, ApplicationConfigurationItem, BakeableTheme, BindingHost, Brush, Buffer, ChildNodeContainer, ComponentNodeInterface, CubemapTextureInterface, DataObject, DataSource, DerivedMaterialType, DiskRelatedItem, EnginePlugin, EnginePluginContent, EnginePluginContentType, EnginePluginFile, ExportTimeGeneratedTrajectory, ExportedPropertyContainerItem, FileSystemProjectItem, FontFamily, Guide, IBindingSource, IComposerContainer, IConcreteProjectItemLibrary, INodeEffect2DContainer, INodeEffectPrefabTemplate2D, INodePrefabTemplate, IPrefabTemplate, IRenderPassPrefabTemplate, IStyleContainer, ITriggerCondition, ImageFileSource, ImportSourceItem, KzbSource, Material, MaterialVariation, MeshBase, Node, NodeComponent, NodeComponentHost, NodeEffect2D, NodeEffectPrefab2D, NodeResource, ObjectSource, ObservableFile, OrderedChildNodeContainer, OutputMaterial, PageTransition, PageTransitionAnimation, PageTransitionCollection, ParticleSystemGraph, PrefabPlaceholder, PrefabTemplate, PrismGraph, Project, ProjectItemLibrary< out T >, RenderPassPrefab, RenderTarget, ResourceDictionaryItem, Shader, ShaderGraph, Shortcut, SingleTextureInterface, State, StateGroup, StateManager, StudioPluginItem, StyleItem, Tag, Texture, TimelineEntry, TimelineEntryTarget, TimelineSequence, Trajectory, TriggerActionItem, TriggerConditionItem, and WriteLogActionForwardArgument.
Public Member Functions | |
| void | AddProperty (Property property) |
| Adds a property to an item. | |
| void | AddProperty (string propertyName) |
| Adds a property to an item. | |
| void | BeginBatchModification (string batchName) |
| Begins a batch modification operation. | |
| bool | CanAddProperty (Property property) |
| Checks whether Kanzi Studio allows you to add a specific property to an item. | |
| bool | CanAddProperty (string propertyName) |
| Checks whether Kanzi Studio allows you to add a specific property to an item. | |
| void | CommitBatchModification () |
| Commits the current batch modification operation. | |
| bool | Delete () |
| Deletes a project item. | |
| void | DeregisterThumbnailUser (object user) |
| Deregisters a registerd thumbnail user. | |
| IEnumerable< Property > | GetAddableProperties () |
| Gets a list of properties which you can add to an item. | |
| T | GetAncestor< T > () |
| Gets the nearest item of given type in the parent tree. | |
| ProjectItem | GetChild (string childName) |
| Gets the child item of the current item with the given name. | |
| T | GetChild< T > (string childName) |
| Gets the child item of the current item with the given name and type. | |
| int | GetChildIndex (ProjectItem child) |
| Gets the index of a child project item within this item's children collection. | |
| IEnumerable< Property > | GetContextProperties () |
| Gets the context properties for this project item. | |
| IEnumerable< Property > | GetFixedProperties () |
| Gets the fixed properties for this project item that cannot be removed. | |
| IEnumerable< Property > | GetFrequentlyAddedProperties () |
| Gets the properties that are frequently added to this type of project item. | |
| ProjectItem | GetProjectItemByPath (string path) |
| Gets a project item by its path relative to this project item. | |
| string | GetRelativeProjectPathTo (ProjectItem anotherItem) |
| Gets the relative path from this project item to another project item. | |
| IEnumerable< Property > | GetRemovableProperties () |
| Gets a list of properties which you can remove from an item. | |
| BitmapSource | GetThumbnail (int width, int height, bool showChildren, bool showFullScreen, Node contextNode) |
| Gets the thumbnail image for a project item. | |
| BitmapSource | GetThumbnail (int width, int height, bool showChildren, bool showFullScreen, Node contextNode, float[] letterboxColorRGBA) |
| Gets the thumbnail image for a project item. | |
| IEnumerable< ProjectItem > | GetTreeItemsAsList () |
| Enumerates the items under this ProjectItem including this item itself, children, and grand children. | |
| bool | HasProperty (Property property) |
| Checks whether an item has a specific property. | |
| bool | HasProperty (string propertyName) |
| Checks whether an item has a specific property. | |
| bool | IsPropertyReadOnly (Property property) |
| Checks whether the specified property is read-only on this project item. | |
| void | RegisterThumbnailUser (object user, uint width, uint height, bool showChildren, bool showFullScreen, Node contextNode) |
| Registers a user for the thumbnail images for a project item. | |
| void | RemoveProperty (Property property) |
| Removes a property from an item. | |
| void | RemoveProperty (string propertyName) |
| Removes a property from an item. | |
| void | SetChildIndex (ProjectItem child, int index) |
| Sets the index of a child project item within this item's children collection. | |
| void | SetPropertyReadOnlyStatus (Property property, bool? value) |
| Sets the read-only status of the specified property on this project item. | |
| void | UpdateValidity () |
| Recalculates the validity the item. | |
Public Member Functions inherited from PropertyContainer | |
| object | Get (Property property) |
| Gets the value of a property. | |
| object | Get (string propertyName) |
| Gets the value of a property. | |
| T | Get< T > (TypedProperty< T > property) |
| Gets the value of a property. | |
| void | Set (string propertyName, object value) |
| Sets the value of a property. | |
| void | Set< T > (TypedProperty< T > property, T value) |
| Sets the value of a property. | |
Public Member Functions inherited from ChildContainer | |
| string | GenerateUniqueChildName (string defaultName) |
| Generates a unique name. | |
| string | GetInvalidityReasonOfNewName (string newName) |
| Returns the reason why the passed name is not valid. | |
Properties | |
| IEnumerable< ProjectItem > | Children [get] |
| Gets all child items of a project item. | |
| string | IconLocation [get] |
| Gets the location of the icon for this project item in Kanzi Studio. | |
| object | IconModifier [get, set] |
| Gets or sets the icon modifier for this project item. | |
| string | InvalidityReason [get] |
| Gets the reason why this project item is in an invalid state, or null if the item is valid. | |
| bool | IsDeleted [get] |
| Gets whether this project item has been deleted. | |
| bool | IsDisposed [get] |
| Gets whether this project item has been disposed. | |
| bool | IsHidden [get, set] |
| Gets or sets whether this project item is hidden in Kanzi Studio. | |
| bool | IsReadOnly [get, set] |
| Gets or sets whether this project item is read-only. | |
| bool | IsValidState [get] |
| Gets whether this project item is in a valid state. | |
| string | KzbUrl [get] |
| Gets the kzb URL of a project item. | |
| string | Name [get, set] |
| Gets or sets the name of a project item. | |
| ProjectItem | Parent [get, set] |
| Gets or sets the parent of this project item. | |
| string | Path [get] |
| Gets the path to this project item within the project. | |
| Project | Project [get] |
| Gets the project in which this item is located. | |
| Type | ProjectItemType [get] |
| Gets the type of this project item. | |
| PropertyTypeLibrary | PropertyTypeLibrary [get] |
| Gets the Property Types library of the project of this item which stores all property types you create in a Kanzi Studio project. | |
| ProjectItemProperties | PropertyTypes [get] |
| object | this[Property property] [get, set] |
| Gets or sets the value of the specified property on this project item. | |
| object | this[string propertyName] [get, set] |
| Gets or sets the value of the property with the specified name on this project item. | |
| string | ToolTip [get] |
| Gets the tooltip text for this project item in Kanzi Studio. | |
| string | TypeDisplayName [get] |
| Gets the type of a project item. | |
Properties inherited from PropertyContainer | |
| IEnumerable< Property > | Properties [get] |
| Gets the properties in a project item or node component. | |
Events | |
| EventHandler< CollectionChangedEventArgs< ProjectItem > > | ChildCollectionChanged |
| Occurs when the children collection of this project item changes. | |
| EventHandler< DeletedEventArgs > | Deleted |
| Occurs after this project item has been deleted. | |
| EventHandler< DeletedEventArgs > | Deleting |
| Occurs when this project item is about to be deleted. | |
| EventHandler< CollectionChangedEventArgs< ProjectItem > > | DescendantChildCollectionChanged |
| Occurs when the children collection of this project item or any of its descendants changes. | |
| EventHandler< DeletedEventArgs > | DescendantDeleted |
| Occurs after a descendant of this project item has been deleted. | |
| EventHandler< DynamicPropertyChangedEventArgs > | DescendantDynamicPropertyChanged |
| Occurs when a dynamic property value changes on this project item or any of its descendants. | |
| EventHandler< ParentChangedEventArgs > | DescendantParentChanged |
| Occurs when the parent of this project item or any of its descendants changes. | |
| EventHandler< CollectionChangedEventArgs< string > > | DescendantPropertyCollectionChanged |
| Occurs when a property is added to or removed from this project item or any of its descendants. | |
| EventHandler< ProjectItemEventArgs > | Disposing |
| Occurs when this project item is being disposed. | |
| EventHandler< DynamicPropertyChangedEventArgs > | DynamicPropertyChanged |
| Occurs when a dynamic property value changes on this project item. | |
| EventHandler< ParentChangedEventArgs > | ParentChanged |
| Occurs when the parent of this project item changes. | |
| EventHandler< PathChangedEventArgs > | PathChanged |
| Occurs when the path of this project item changes. | |
| EventHandler< DynamicPropertyChangedEventArgs > | PreviewDescendantDynamicPropertyChanged |
| Occurs before a dynamic property value changes on this project item or any of its descendants. | |
| EventHandler< DynamicPropertyChangedEventArgs > | PreviewDynamicPropertyChanged |
| Occurs before a dynamic property value changes on this project item. | |
| EventHandler< CollectionChangedEventArgs< string > > | PropertyCollectionChanged |
| Occurs when a property is added to or removed from this project item. | |
| EventHandler< ReplaceEventArgs > | Replacing |
| Occurs when this project item is being replaced. | |
| EventHandler | ThumbnailChanged |
| Occurs when the thumbnail of this project item changes. | |
| EventHandler | ValidityChanged |
| Occurs when the validity state of this project item changes. | |
Access nodes and resources in a Kanzi Studio project.
For example, use this class to get a node, add, remove, or set its properties, find out about its relations to other nodes, get notifications about changes to that node, and to delete the node.
Adds a property to an item.
When you add a property to a node, the initial value of the property is the default value set for that property. Use the Set function to set the value of a property.
| property |
Examples
To add a property to a node:
Adds a property to an item.
When you add a property to a node, the initial value of the property is the default value set for that property. Use the Set function to set the value of a property.
| propertyName | The name of the property to add. |
Examples
To add a property to a node and set the value of the property:
To add a property to a node and set the value of the property to a resource:
Begins a batch modification operation.
Use this to group multiple modifications into a single undo operation.
| batchName | The name of the batch operation for the undo history. |
Checks whether Kanzi Studio allows you to add a specific property to an item.
| property | The property. |
Examples
To check whether Kanzi Studio allows you to add a specific property to a node:
Checks whether Kanzi Studio allows you to add a specific property to an item.
| propertyName | The name of the property. |
Examples
To check whether Kanzi Studio allows you to add a specific property to a node:
| void CommitBatchModification | ( | ) |
Commits the current batch modification operation.
| bool Delete | ( | ) |
Deletes a project item.
Examples
To delete a node from the node tree:
Deregisters a registerd thumbnail user.
| user | The registered thumbnail user you want to deregister. |
| IEnumerable< Property > GetAddableProperties | ( | ) |
Gets a list of properties which you can add to an item.
Examples
To get a list of properties which you can add to a node:
| T GetAncestor< T > | ( | ) |
Gets the nearest item of given type in the parent tree.
The parent tree starts from the item itself, then this.Parent, then this.Parent.Parent, and so on.
| T | The type looked for |
| T | : | class | |
| T | : | ProjectItem |
| ProjectItem GetChild | ( | string | childName | ) |
Gets the child item of the current item with the given name.
For example, use this function to get the child nodes of the current node, or items in any of the Kanzi Studio project libraries, such as Brushes, Textures, Styles, and so on.
| childName | The name of the child item you want to get with this function. |
Examples
To get a node:
To get a resource:
Gets the child item of the current item with the given name and type.
For example, use this function to get the child nodes of the current node, or items in any of the Kanzi Studio project libraries, such as Brushes, Textures, Styles, and so on.
| T | The type of the item you want to get with this function. |
| childName | The name of the child item you want to get with this function. |
Examples
To get a node:
To get a resource:
| T | : | ProjectItem |
| int GetChildIndex | ( | ProjectItem | child | ) |
Gets the index of a child project item within this item's children collection.
| child | The child project item. |
| IEnumerable< Property > GetContextProperties | ( | ) |
Gets the context properties for this project item.
| IEnumerable< Property > GetFixedProperties | ( | ) |
Gets the fixed properties for this project item that cannot be removed.
| IEnumerable< Property > GetFrequentlyAddedProperties | ( | ) |
Gets the properties that are frequently added to this type of project item.
| ProjectItem GetProjectItemByPath | ( | string | path | ) |
Gets a project item by its path relative to this project item.
| path | The relative path to the project item. |
| string GetRelativeProjectPathTo | ( | ProjectItem | anotherItem | ) |
Gets the relative path from this project item to another project item.
| anotherItem | The target project item. |
| IEnumerable< Property > GetRemovableProperties | ( | ) |
Gets a list of properties which you can remove from an item.
Examples
To get a list of properties which you can remove from a node:
| BitmapSource GetThumbnail | ( | int | width, |
| int | height, | ||
| bool | showChildren, | ||
| bool | showFullScreen, | ||
| Node | contextNode ) |
Gets the thumbnail image for a project item.
If you use the RegisterThumbnailUser function, Kanzi makes the image availabe in cache for quick retrival, otherwise the rendering of the thumbnail takes more time.
| width | The width of the thumbnail image. |
| height | The height of the thumbnail image. |
| showChildren | If set to true [show children]. |
| showFullScreen | If set to true [show full screen]. |
| contextNode | The context node for resources, such as states, that require a node to display themselves in. |
| BitmapSource GetThumbnail | ( | int | width, |
| int | height, | ||
| bool | showChildren, | ||
| bool | showFullScreen, | ||
| Node | contextNode, | ||
| float[] | letterboxColorRGBA ) |
Gets the thumbnail image for a project item.
If you use the RegisterThumbnailUser function, Kanzi makes the image availabe in cache for quick retrival, otherwise the rendering of the thumbnail takes more time.
| width | The width of the thumbnail image. |
| height | The height of the thumbnail image. |
| showChildren | If set to true [show children]. |
| showFullScreen | If set to true [show full screen]. |
| contextNode | The context node for resources, such as states, that require a node to display themselves in. |
| letterboxColorRGBA | Letter box color |
| IEnumerable< ProjectItem > GetTreeItemsAsList | ( | ) |
Enumerates the items under this ProjectItem including this item itself, children, and grand children.
Checks whether an item has a specific property.
For example, use this function to check for the presence of a specific property before trying to add or remove that property from an item.
| property | The property the presence of which you want to check. |
Examples
To check whether a node has a specific property:
Checks whether an item has a specific property.
For example, use this function to check for the presence of a specific property before trying to add or remove that property from an item.
| propertyName | The name of the property the presence of which you want to check. |
Examples
To check whether a node has a specific property:
Checks whether the specified property is read-only on this project item.
| property | The property to check. |
| void RegisterThumbnailUser | ( | object | user, |
| uint | width, | ||
| uint | height, | ||
| bool | showChildren, | ||
| bool | showFullScreen, | ||
| Node | contextNode ) |
Registers a user for the thumbnail images for a project item.
Registering allows you to retrieve thumbnail images in the background before Kanzi sets off the ThumbnailChanged event. After registering, the calls to the GetThumbnail retrieve the cached thumbnail image faster than if you do not register. You must deregister using the DeregisterThumbnailUser function when you are not using the thumbnail images anymore.
| user | The user. |
| width | The width of the thumbnail image. |
| height | The height of the thumbnail image. |
| showChildren | If set to true [show children]. |
| showFullScreen | If set to true [show full screen]. |
| contextNode | The context node for resources, such as states, that require a node to display themselves in. |
Removes a property from an item.
| property | The property to remove. |
Examples
To remove a property from a node:
Removes a property from an item.
| propertyName | The name of the property to remove. |
Examples
To remove a property from a node:
| void SetChildIndex | ( | ProjectItem | child, |
| int | index ) |
Sets the index of a child project item within this item's children collection.
| child | The child project item. |
| index | The new zero-based index for the child. |
Sets the read-only status of the specified property on this project item.
| property | The property for which to set the read-only status. |
| value | The read-only status to set, or null to clear the status. |
| void UpdateValidity | ( | ) |
Recalculates the validity the item.
This can be called if there has happened an external change that affects the validity but has not triggered change in the item itself. This situation can arise e.g. when implementing EditTimeComponentPlugin that returns problem descriptions based on the state of other nodes than the current one.
|
get |
Gets all child items of a project item.
Examples
To get all child nodes of a node:
To get all resources from a library:
|
get |
Gets the location of the icon for this project item in Kanzi Studio.
|
getset |
Gets or sets the icon modifier for this project item.
|
get |
Gets the reason why this project item is in an invalid state, or null if the item is valid.
|
get |
Gets whether this project item has been deleted.
|
get |
Gets whether this project item has been disposed.
|
getset |
Gets or sets whether this project item is hidden in Kanzi Studio.
|
getset |
Gets or sets whether this project item is read-only.
|
get |
Gets whether this project item is in a valid state.
// OKPropertyNameUsage
|
get |
Gets the kzb URL of a project item.
The kzb URL gives you the exact location of a project item. For example, you can use the kzb URL to access a node or a resource in a JavaScript script in your Kanzi application.
Examples
To get the kzb URL of a node:
To get the kzb URL of a resource:
|
getset |
Gets or sets the name of a project item.
This is the same value as the value of the Name property. The name must be unique among children of the same parent.
Examples
To get the name of a node:
To get the name of a resource:
|
getset |
Gets or sets the parent of this project item.
|
get |
Gets the path to this project item within the project.
|
get |
Gets the type of this project item.
Gets the Property Types library of the project of this item which stores all property types you create in a Kanzi Studio project.
After you get the library, you can access and create resources in that library.
Examples
To get all property types in the Property Types library:
To create your own property type of the integer data type:
|
get |
Implemented in AbstractComposer, AbstractEnginePluginContentType, AbstractMaterialType, AbstractMeshNode, AbstractTheme, AbstractThemeGroup, AndroidBuildConfigurationItem, AngleTrajectory, Animation, AnimationChildClip, AnimationClip, AnimationClipBase, ApplicationConfigurationItem, ApplicationConfigurationResourceFileDirectory, ArcTrajectory, Asset3DImportSourceDirectory, Asset3DSourceFile, BitmapFontFile, BoxMeshNode, Brush, BrushType, Buffer, Button2D, CameraNode, CircleTrajectory, CombineObjectSource, ComponentNode, ComponentNode2D, ComponentType, Composer, ComputeShader, ContainsPropertyFilterObjectSource, CubeMapRenderTargetTexture, CubeMapTexture, DataObject, DataSource, DataSourceType, DerivedMaterialType, DockLayout2D, EllipseTrajectory, EmptyNode, EmptyNode2D, EnginePlugin, EnginePluginFile, FixedSortFilterObjectSource, FlowLayout2D, FontDirectory, FontFamily, FontFile, FragmentShader, GenericResourceFile, GenericResourceFileDirectory, GeometryShader, GridLayout2D, GridListBox2D, Guide, Image2D, ImageDirectory, ImageFile, ImportSourceFile, InstantiatorNode, KzbReferenceItem, KzbSource, LightNode, LineTrajectory, LocalizationTable, Material, MaterialType, MaterialVariation, Mesh, MeshBase, MeshNode, MeshNodeMesh, MessageType, NinePatchImage2D, Node, Node2D, Node2DPrefabPlaceholder, Node2DPrefabTemplate, Node3D, Node3DPrefabPlaceholder, Node3DPrefabTemplate, NodeComponent, NodeComponentType, NodeEffect2D, NodeEffectPrefab2D, NodeEffectType2D, ObjectSource, ObjectTypeFilterObjectSource, ObservableFile, OutputMaterial, Page, PageHost, PageTransition, PageTransitionAnimation, PageTransitionCollection, ParticleSystemGraph, PlaneMeshNode, PrefabTemplate, PrimitiveMeshNode, PrismGraph, ProgressiveRenderingNode2D, Project, ProjectReferenceItem, PropertyIsEqualObjectSource, QNXBuildConfigurationItem, RectangleTrajectory, RenderPass, RenderPassPrefab, RenderPassType, RenderTargetTexture, ResourceDictionaryItem, ResourceFileDirectory, RootObjectSource, Scene, Screen, ScrollView2D, Shader, ShaderGraph, ShaderSourceDirectory, ShaderSourceFile, Shortcut, SingleInputObjectSource, SingleTexture, Slider2D, SourceAssetDirectory, SourceAssetFile, SphereMeshNode, SpiralTrajectory, SplineTrajectory, StackLayout2D, State, StateGroup, StateManager, StudioPluginItem, StyleItem, StyleLibrary, SystemShaderSourceDirectory, SystemShaderSourceFile, Tag, TagFilterObjectSource, TessellationControlShader, TessellationEvaluationShader, TextBlock2D, Texture, ThemeGroup, TimelineEntry, TimelineSequence, ToggleButton2D, ToggleButtonGroup2D, Trajectory, TrajectoryLayout2D, TrapezoidTrajectory, TriggerActionItem, TriggerActionType, TriggerConditionItem, TriggerNodeComponent, TrueTypeFontFile, VertexShader, Viewport2D, VolumeTexture, WindowsBuildConfigurationItem, and WriteLogActionForwardArgument.
Gets or sets the value of the specified property on this project item.
| property | The property to get or set. |
|
getset |
Gets or sets the value of the property with the specified name on this project item.
| propertyName | The name of the property to get or set. |
|
get |
Gets the tooltip text for this project item in Kanzi Studio.
|
get |
Gets the type of a project item.
Examples
To get the type of a node:
To get the type of a resource:
| EventHandler<CollectionChangedEventArgs<ProjectItem> > ChildCollectionChanged |
Occurs when the children collection of this project item changes.
| EventHandler<DeletedEventArgs> Deleted |
Occurs after this project item has been deleted.
| EventHandler<DeletedEventArgs> Deleting |
Occurs when this project item is about to be deleted.
| EventHandler<CollectionChangedEventArgs<ProjectItem> > DescendantChildCollectionChanged |
Occurs when the children collection of this project item or any of its descendants changes.
| EventHandler<DeletedEventArgs> DescendantDeleted |
Occurs after a descendant of this project item has been deleted.
| EventHandler<DynamicPropertyChangedEventArgs> DescendantDynamicPropertyChanged |
Occurs when a dynamic property value changes on this project item or any of its descendants.
| EventHandler<ParentChangedEventArgs> DescendantParentChanged |
Occurs when the parent of this project item or any of its descendants changes.
| EventHandler<CollectionChangedEventArgs<string> > DescendantPropertyCollectionChanged |
Occurs when a property is added to or removed from this project item or any of its descendants.
| EventHandler<ProjectItemEventArgs> Disposing |
Occurs when this project item is being disposed.
| EventHandler<DynamicPropertyChangedEventArgs> DynamicPropertyChanged |
Occurs when a dynamic property value changes on this project item.
| EventHandler<ParentChangedEventArgs> ParentChanged |
Occurs when the parent of this project item changes.
| EventHandler<PathChangedEventArgs> PathChanged |
Occurs when the path of this project item changes.
This event does not bubble to parent items.
| EventHandler<DynamicPropertyChangedEventArgs> PreviewDescendantDynamicPropertyChanged |
Occurs before a dynamic property value changes on this project item or any of its descendants.
| EventHandler<DynamicPropertyChangedEventArgs> PreviewDynamicPropertyChanged |
Occurs before a dynamic property value changes on this project item.
| EventHandler<CollectionChangedEventArgs<string> > PropertyCollectionChanged |
Occurs when a property is added to or removed from this project item.
| EventHandler<ReplaceEventArgs> Replacing |
Occurs when this project item is being replaced.
| EventHandler ThumbnailChanged |
Occurs when the thumbnail of this project item changes.
This event does not bubble to parent items.
| EventHandler ValidityChanged |
Occurs when the validity state of this project item changes.
// OKPropertyNameUsage