Base class for objects that have animatable/storable properties.
Inherits :
Inherited By : DzBackdrop, bonebinding_dz, bulgebinding_dz, geometryregion_dz, iraypropertyholder_dz, legacyalternategeometry_dz, legacyjoint_dz, legacyjointparam_dz, DzMaterial, DzModifier, DzNode, DzObject, shaderbrick_dz, shape_dz, simulationsettingsprovider_dz and weightmap_dz
void | labelChanged ( String newLabel ) |
void | parentChanged () |
void | privatePropertyAdded ( DzProperty prop ) |
void | privatePropertyListChanged () |
void | privatePropertyListInTreeChanged () |
void | privatePropertyRemoved ( DzProperty prop ) |
void | privatePropertyTreeChanged () |
void | propertyAdded ( DzProperty prop ) |
void | propertyListChanged () |
void | propertyListInTreeChanged () |
void | propertyRemoved ( DzProperty prop ) |
void | propertyTreeChanged () |
Classes derived from DzElement may have any number of properties (objects derived from DzProperty). Those properties may be added and removed at runtime and may be specified as animatable or not. There are several types of properties that have been supplied with the Studio SDK. Property names must be unique within an element. A variety of methods are provided to allow easy traversal and/or searching of the properties list for an object.
Methods are provided to clear animation data on all properties of an object either over a range or over all time.
DzElement takes ownership of all properties added via addProperty(). Subclasses should not attempt to delete properties that have been added to the element.
DzElement also handles saving and loading of all properties. When DzElement loads a property from a file, it will delete any existing property of the same name and replace it with the new property read in - subclasses are responsible for updating any local references to properties whenever a file is loaded. The easiest and most reliable way to do this is for the subclass to write out and read back in any local pointers it maintains to properties. Another approach would be for the subclass to reimplement the postLoadFile() function and update its references by calling findProperty() to lookup the properties by name.
Holds the number used to uniquely identify this element in the scene. (Read Only)
Since:
DzError : addDataItem( DzElementData item )
Hang a new custom data item off of this element. Data items will be deleted when this element is deleted, so ownership of the data item is transferred to the element after this call. Do not attempt to delete the data item yourself unless you call removeDataItem() first.
Parameter(s):
Return Value:
See Also:
DzError : addPrivateProperty( DzProperty prop )
Add a new private property that will be available for connections or direct editing.
Parameter(s):
Return Value:
See Also:
DzError : addProperty( DzProperty prop )
Add a new property. Adds a new property that will be available for connections or direct editing.
Parameter(s):
Return Value:
See Also:
void : beginEdit()
Begins an editing operation for this element - DzProperty::beginEdit() will be called for all properties belonging to this element.
void : cancelEdit()
Cancels an editing operation for this element - DzProperty::cancelEdit() will be called for all properties belonging to this element.
void : clearAllAnimData()
Removes all animation keys on this object.
void : clearAnimData( DzTimeRange range )
Clear animation keys in the currently active animation layer. Removes animation data on all animatible properties owned by this element over the given range.
Parameter(s):
void : copyFrom( DzElement source )
Matches the properties on this element to properties on the given element by name, and then copies the values of matching properties on source to the properties on this element.
Parameter(s):
elementclipboard_dz : copyToClipboard( Array contentTypes=[] )
Copies the property values of the element to a 'clipboard' so that they may be saved and applied (copied) to another element - or to the same element.
Parameter(s):
Return Value:
DzError : deleteDataItem( DzElementData item )
Remove the the data item from this element and deletes it. Pointer is invalid after this call if DZ_NO_ERROR is returned.
Parameter(s):
Return Value:
See Also:
DzElementData : findDataItem( String dataName )
Retrieve the user data item with the given ID, if one with that ID is attached to this element.
Parameter(s):
Return Value:
Number : findDataItemIndex( DzElementData item )
Searches for the first data item index.
Parameter(s):
Return Value:
DzProperty : findMatchingProperty( DzProperty srcProp )
Locate a matching property.
Parameter(s):
Return Value:
DzProperty : findPrivateProperty( String name )
Locate a property by name.
Parameter(s):
Return Value:
DzProperty : findPrivateProperty( String name, Boolean caseSensitive )
Locate a property by name.
Parameter(s):
Return Value:
DzProperty : findPrivatePropertyByLabel( String label )
Locate a property by label.
Parameter(s):
Return Value:
DzProperty : findPrivatePropertyByLabel( String label, Boolean caseSensitive )
Locate a property by label.
Parameter(s):
Return Value:
DzProperty : findProperty( String name )
Locate a property by name.
Parameter(s):
Return Value:
DzProperty : findProperty( String name, Boolean caseSensitive )
Locate a property by name.
Parameter(s):
Return Value:
DzProperty : findPropertyByLabel( String label )
Locate a property by label.
Parameter(s):
Return Value:
DzProperty : findPropertyByLabel( String label, Boolean caseSensitive )
Locate a property by label.
Parameter(s):
Return Value:
void : finishEdit()
finishes an editing operation for this element - DzProperty::finishEdit() will be called for all properties belonging to this element.
void : getAttributes( DzSettings settings )
Populates the given settings object with the attributes of this element. If this settings object is not empty the save filters will save out this settings information in the preset.
Parameter(s):
See Also:
DzElementData : getDataItem( Number index )
Parameter(s):
Return Value:
Array : getDataItemList()
Return Value:
DzElement : getElementChild( Number which )
Parameter(s):
Return Value:
DzElement : getElementParent()
Return Value:
Return Value:
Return Value:
Return Value:
Number : getNumElementChildren()
Return Value:
Number : getNumPrivateProperties()
Return Value:
Return Value:
DzProperty : getPrivateProperty( Number index )
Get a property from this element's property list.
Parameter(s):
Return Value:
DzPropertyGroupTree : getPrivatePropertyGroups()
Return Value:
Array : getPrivatePropertyList()
Return Value:
DzProperty : getProperty( Number index )
Get a property from this element's property list.
Parameter(s):
Return Value:
DzPropertyGroupTree : getPropertyGroups()
Return Value:
Array : getPropertyList()
Return Value:
String : getUniqueDataItemName( String dataName )
Parameter(s):
Return Value:
dataName
is already unique, otherwise a unique name.Since:
String : getUniquePrivatePropertyName( String name )
Parameter(s):
Return Value:
name
is already unique, otherwise a unique private property name.Since:
String : getUniquePropertyName( String name )
Parameter(s):
Return Value:
name
is already unique, otherwise a unique property name.Since:
Return Value:
true
if the element is in an editing operation, otherwise false
.See Also:
DzError : insertPrivateProperty( Number index, DzProperty prop )
Adds a new property that will be available for connections or direct editing.
Parameter(s):
Return Value:
See Also:
DzError : insertProperty( Number index, DzProperty prop )
Add a new property. Adds a new property that will be available for connections or direct editing.
Parameter(s):
Return Value:
See Also:
DzError : moveDataItemToIndex( DzElementData item, Number index )
Moves a data item to a new index.
Parameter(s):
Return Value:
DzError : movePrivateProperty( DzProperty prop, DzElement element )
Moves the given property from this element to newElement, if it can be removed. Properties can be specified as non-removable (e.g. the rotation channels of the DzNode class). Doing so makes it impossible to move that property to another element.
Parameter(s):
prop
should be moved to.Return Value:
See Also:
DzError : moveProperty( DzProperty prop, DzElement element )
Moves the given property from this element to newElement, if it can be removed. Properties can be specified as non-removable (e.g. the rotation channels of the DzNode class). Doing so makes it impossible to move that property to another element.
Parameter(s):
Return Value:
See Also:
DzError : removeDataItem( DzElementData item )
Remove the data item from this element.
Parameter(s):
Return Value:
See Also:
DzError : removePrivateProperty( DzProperty prop )
Removes the given property, if it can be removed. Properties can be specified as non-removable (e.g. the rotation channels of the DzNode class). Doing so makes it impossible to remove that property from the object.
Parameter(s):
Return Value:
See Also:
DzError : removePrivateProperty( String name )
Attempts to remove the named property. Fails if the property could not be found or could not be removed.
Parameter(s):
Return Value:
See Also:
DzError : removeProperty( DzProperty prop )
Removes the given property, if it can be removed. Properties can be specified as non-removable (e.g. the rotation channels of the DzNode class). Doing so makes it impossible to remove that property from the object.
Parameter(s):
Return Value:
See Also:
DzError : removeProperty( String name )
Attempts to remove the named property. Fails if the property could not be found or could not be removed.
Parameter(s):
Return Value:
See Also:
DzElement : setAttributes( DzSettings settings )
Sets attributes in the handed in settings and returns a pointer to an element set by these settings. The element returned may not be a new element or null if the settings are not correct. Default implementation returns this with no changes.
Parameter(s):
Return Value:
DzError : setLabel( String name )
Set the user-defined label that is displayed in the interface for this object.
Parameter(s):
Return Value:
void : setLoadScript( DzScript script )
Sets the script that will be executed when this element is loaded from a file.
Parameter(s):
Set the internal name of this object.
Parameter(s):
Return Value:
true
if this element should have its property groups and properties sorted after being created on load, otherwise false
.void : update()
Called to update any cached or display data for this object.
void : labelChanged( String newLabel )
Signature:“labelChanged(const QString&)”
Emitted when this object's label is changed.
Parameter(s):
void : parentChanged()
Signature:“parentChanged()”
Emitted when this element's parent is changed.
void : privatePropertyAdded( DzProperty prop )
Signature:“privatePropertyAdded(DzProperty*)”
Emitted when a private property is added to this element.
Parameter(s):
void : privatePropertyListChanged()
Signature:“privatePropertyListChanged()”
Emitted when a private property is added to or removed from this element.
void : privatePropertyListInTreeChanged()
TODO: Add description.
void : privatePropertyRemoved( DzProperty prop )
Signature:“privatePropertyRemoved(DzProperty*)”
Emitted when a private property is removed from this element.
Parameter(s):
void : privatePropertyTreeChanged()
Signature:“privatePropertyTreeChanged()”
Emitted when the private property tree has changed.
void : propertyAdded( DzProperty prop )
Signature:“propertyAdded(DzProperty*)”
Emitted when a property is added to this element.
Parameter(s):
void : propertyListChanged()
Signature:“propertyListChanged()”
Emitted when a property is added to or removed from this element.
void : propertyListInTreeChanged()
TODO: Add description.
void : propertyRemoved( DzProperty prop )
Signature:“propertyRemoved(DzProperty*)”
Emitted when a property is removed from this element.
Parameter(s):
void : propertyTreeChanged()
Signature:“propertyTreeChanged()”
Emitted when the property tree has changed.