The SceneTreeItem class is a smart pointer which corresponds to an item or node in a tree object in a GUI toolkit, e.g., a TreeViewItem in WPF or an HTREEITEM in MFC. This class must be derived from to facilitate tree creation in the various GUI toolkits. It is used to represent items in a scene graph or segment browser. More...
Classes | |
class | SceneTreeItemUnknown |
Public Member Functions | |
abstract HPS.SceneTreeItem | AddChild (HPS.Key in_key, HPS.SceneTree.ItemType in_type, string in_title) |
This function is used to create a new SceneTreeItem to be the child of this SceneTreeItem. This function will be invoked if this SceneTreeItem has children and Expand has been invoked on it. This function should contain any necessary calls to GUI toolkits to create the appropriate GUI elements, e.g., see the implementations in the mfc_sandbox or wpf_sandbox. Additionally, since this function requires the creation of a derived SceneTreeItem, that derived SceneTreeItem should use the base constructor which takes the same arguments this function. More... | |
abstract HPS.SceneTreeItem | AddChild (HPS.Key in_key, HPS.SceneTree.ItemType in_type) |
This function is used to create a new SceneTreeItem to be the child of this SceneTreeItem. This function will be invoked if this SceneTreeItem has children and Expand has been invoked on it. This function should contain any necessary calls to GUI toolkits to create the appropriate GUI elements, e.g., see the implementations in the mfc_sandbox or wpf_sandbox. Additionally, since this function requires the creation of a derived SceneTreeItem, that derived SceneTreeItem should use the base constructor which takes the same arguments this function. More... | |
virtual void | Assign (HPS.SceneTreeItem in_that) |
Share the underlying smart-pointer of the SceneTreeItem source. More... | |
virtual void | Collapse () |
This function should be invoked when this SceneTreeItem needs to collapse. If this function is overridden, the overriding function should invoke this base function. Additionally, this function will always release all children for this SceneTreeItem when invoked. More... | |
override void | Dispose () |
delegate void | DtorDelegate (IntPtr cPtr) |
override bool | Equals (System.Object obj) |
bool | Equals (HPS.SceneTreeItem in_that) |
Check if the source SceneTreeItem points to the same underlying impl as this SceneTreeItem. More... | |
virtual void | Expand () |
This function should be invoked when this SceneTreeItem needs to expand. If this function is overridden, the overriding function should invoke this base function. Additionally, this function will always repopulate the children for this SceneTreeItem when invoked. More... | |
override int | GetHashCode () |
HPS.SceneTree.ItemType | GetItemType () |
Gets the item type for this SceneTreeItem. This is used to determine what type of data this SceneTreeItem represents in the SceneTree. More... | |
HPS.Key | GetKey () |
Gets the key for this SceneTreeItem. The type of the key depends on the SceneTree::ItemType for this SceneTreeItem. More... | |
HPS.KeyPath | GetKeyPath () |
Gets the key path for this SceneTreeItem. More... | |
string | GetTitle () |
Gets the title for this SceneTreeItem. This is the text that should be displayed for this SceneTreeItem in the SceneTree. More... | |
HPS.SceneTree | GetTree () |
Gets the SceneTree associated with this SceneTreeItem. This provides a means of accessing the derived SceneTree by this SceneTreeItem if necessary. More... | |
bool | HasChildren () |
Indicates whether this SceneTreeItem has any children. More... | |
bool | HasItemType (HPS.SceneTree.ItemType in_mask) |
Indicates whether this SceneTreeItem has the given ItemType mask. More... | |
void | Highlight (ulong in_highlight_options_index) |
This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. This will cause elements along the path to this item (and this item itself) to be marked as selected if they aren't already. Depending on the type of the SceneTreeItem, sometimes a highlight is nonsensical. In this case, no highlight will be performed. More... | |
void | Highlight () |
This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. This will cause elements along the path to this item (and this item itself) to be marked as selected if they aren't already. Depending on the type of the SceneTreeItem, sometimes a highlight is nonsensical. In this case, no highlight will be performed. More... | |
void | Highlight (HPS.HighlightOptionsKit in_highlight_options) |
This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. This will cause elements along the path to this item (and this item itself) to be marked as selected if they aren't already. Depending on the type of the SceneTreeItem, sometimes a highlight is nonsensical. In this case, no highlight will be performed. If the options requested is not part of the associated SceneTree highlight options, it will be added to them. More... | |
bool | IsHighlightable () |
Indicates whether this SceneTreeItem is able to be highlighted. Some items, like those in static trees, cannot be highlighted. More... | |
bool | IsHighlighted () |
Indicates whether this SceneTreeItem is currently highlighted with the options specified in the associated SceneTree. This may mean that the Highlight function on this SceneTreeItem was invoked, or that the key backing this SceneTreeItem was highlighted by the HighlightOperator or HighlightAreaOperator. More... | |
bool | IsSelected () |
Indicates whether this SceneTreeItem is currently marked as selected. More... | |
override HPS.Type | ObjectType () |
This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object. More... | |
SceneTreeItem () | |
The default constructor creates an uninitialized SceneTreeItem object. The Type() function will return Type::None. More... | |
SceneTreeItem (HPS.SceneTreeItem in_that) | |
The copy constructor creates a SceneTreeItem object that shares the underlying smart-pointer of the source SceneTreeItem. More... | |
SceneTreeItem (HPS.SceneTree in_tree, HPS.Model in_model) | |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the Model. The Model provided to this constructor should be accessible from the Canvas associated with the SceneTree, otherwise an exception will be thrown. More... | |
SceneTreeItem (HPS.SceneTree in_tree, HPS.View in_view) | |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the View. The View provided to this constructor should be accessible from the Canvas associated with the SceneTree, otherwise an exception will be thrown. More... | |
SceneTreeItem (HPS.SceneTree in_tree, HPS.Layout in_layout) | |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the Layout. The Layout provided to this constructor should be accessible from the Canvas associated with the SceneTree, otherwise an exception will be thrown. More... | |
SceneTreeItem (HPS.SceneTree in_tree, HPS.Canvas in_canvas) | |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the Canvas. The Canvas provided to this constructor should be the same as the Canvas associated with the SceneTree, otherwise an exception will be thrown. More... | |
SceneTreeItem (HPS.SceneTree in_tree, HPS.Key in_key, HPS.SceneTree.ItemType in_type, string in_title) | |
This constructor creates a SceneTreeItem which is not suitable for acting as a root in a SceneTree, but is suitable to be a SceneTreeItem under the root of the SceneTree. This constructor should be the one invoked in the overridden AddChild function. More... | |
SceneTreeItem (HPS.SceneTree in_tree, HPS.Key in_key, HPS.SceneTree.ItemType in_type) | |
This constructor creates a SceneTreeItem which is not suitable for acting as a root in a SceneTree, but is suitable to be a SceneTreeItem under the root of the SceneTree. This constructor should be the one invoked in the overridden AddChild function. More... | |
delegate HPS.Type | SceneTreeItemDelegate_0 () |
delegate void | SceneTreeItemDelegate_1 (IntPtr in_that) |
delegate void | SceneTreeItemDelegate_2 (IntPtr out_ret, IntPtr in_key, HPS.SceneTree.ItemType in_type, string in_title) |
delegate void | SceneTreeItemDelegate_3 () |
delegate void | SceneTreeItemDelegate_4 () |
delegate void | SceneTreeItemDelegate_5 () |
delegate void | SceneTreeItemDelegate_6 () |
delegate bool | SceneTreeItemDelegate_7 () |
delegate void | SceneTreeItemDelegate_8 () |
virtual void | Select () |
This function will be invoked when this SceneTreeItem should be marked as selected. Marking an item as selected means that the key backing this SceneTreeItem has been highlighted with the options specified in the associated SceneTree or is along a path in which a highlight has occurred. This highlighting may have come as a result of the Highlight function on a SceneTreeItem being invoked (not necessarily this SceneTreeItem), or potentially due to the HighlightOperator or HighlightAreaOperator highlighting the key backing this SceneTreeItem or highlighting some path which includes the key backing this SceneTreeItem. This function is meant to be overridden to allow one to change the appearance of a selected SceneTreeItem, e.g., by bolding the text or changing an icon, to signify this new state. If this function is overridden, the overriding function should invoke this base function. More... | |
void | Unhighlight (ulong in_highlight_options_index) |
This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. This can cause elements along the path to this item (and this item itself) to be marked as unselected unless those items lie along a path which is still highlighted. Depending on the type of the SceneTreeItem, sometimes an unhighlight is nonsensical. In this case, no unhighlight will be performed. More... | |
void | Unhighlight () |
This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. This can cause elements along the path to this item (and this item itself) to be marked as unselected unless those items lie along a path which is still highlighted. Depending on the type of the SceneTreeItem, sometimes an unhighlight is nonsensical. In this case, no unhighlight will be performed. More... | |
void | Unhighlight (HPS.HighlightOptionsKit in_highlight_options) |
This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. This can cause elements along the path to this item (and this item itself) to be marked as unselected unless those items lie along a path which is still highlighted. Depending on the type of the SceneTreeItem, sometimes an unhighlight is nonsensical. In this case, no unhighlight will be performed. If the options requested is not part of the associated SceneTree highlight options, it will be added to them. More... | |
virtual void | Unselect () |
This function will be invoked when this SceneTreeItem should be marked as unselected. Marking an item as unselected means that the key backing this SceneTreeItem is no longer highlighted with the options specified in the associated SceneTree or is no longer along a path in which a highlight has occurred. This unhighlighting may have come as a result of the Unhighlight function on a SceneTreeItem being invoked (not necessarily this SceneTreeItem), or potentially due to the HighlightOperator or HighlightAreaOperator unhighlighting the key backing this SceneTreeItem. or unhighlighting some path which includes the key backing this SceneTreeItem. This function is meant to be overridden to allow one to change the appearance of a selected SceneTreeItem, e.g., by no longer bolding the text or changing an icon, to signify this new state. If this function is overridden, the overriding function should invoke this base function. More... | |
![]() | |
override void | Dispose () |
Sprocket (HPS.Sprocket in_that) | |
![]() | |
virtual bool | Empty () |
Indicates whether this object has any values set on it. More... | |
IntPtr | GetClassID () |
IntPtr | GetInstanceID () |
Returns an identifier that can be used to identify which instance of a class an object is. Different keys and controls will return the same value if they are backed by the same database resource. More... | |
bool | HasType (HPS.Type in_mask) |
This function indicates whether this Object has the given Type mask. More... | |
Object (HPS.Object that) | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
HPS.Type | Type () |
This function returns the true type of the underlying object. This function is useful for finding the type of smart pointer objects that have been cast to more generic types. More... | |
Static Public Member Functions | |
static bool | operator!= (HPS.SceneTreeItem a, HPS.SceneTreeItem b) |
static bool | operator== (HPS.SceneTreeItem a, HPS.SceneTreeItem b) |
![]() | |
static IntPtr | ClassID< T > () |
Protected Member Functions | |
override void | deleteCptr () |
void | DtorCallback (IntPtr p) |
![]() | |
override void | deleteCptr () |
![]() | |
virtual IntPtr | GetNonDirectorClassID () |
Additional Inherited Members | |
![]() | |
bool | cMemOwn |
HandleRef | cptr |
HandleRef | scptr |
The SceneTreeItem class is a smart pointer which corresponds to an item or node in a tree object in a GUI toolkit, e.g., a TreeViewItem in WPF or an HTREEITEM in MFC. This class must be derived from to facilitate tree creation in the various GUI toolkits. It is used to represent items in a scene graph or segment browser.
|
inline |
The default constructor creates an uninitialized SceneTreeItem object. The Type() function will return Type::None.
|
inline |
The copy constructor creates a SceneTreeItem object that shares the underlying smart-pointer of the source SceneTreeItem.
in_that | The source SceneTreeItem to copy. |
|
inline |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the Model. The Model provided to this constructor should be accessible from the Canvas associated with the SceneTree, otherwise an exception will be thrown.
in_tree | The SceneTree with which to associate this new root SceneTreeItem. |
in_model | The Model for this root SceneTreeItem. |
|
inline |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the View. The View provided to this constructor should be accessible from the Canvas associated with the SceneTree, otherwise an exception will be thrown.
in_tree | The SceneTree with which to associate this new root SceneTreeItem. |
in_view | The View for this root SceneTreeItem. |
|
inline |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the Layout. The Layout provided to this constructor should be accessible from the Canvas associated with the SceneTree, otherwise an exception will be thrown.
in_tree | The SceneTree with which to associate this new root SceneTreeItem. |
in_layout | The Layout for this root SceneTreeItem. |
|
inline |
This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. This root would start at the Canvas. The Canvas provided to this constructor should be the same as the Canvas associated with the SceneTree, otherwise an exception will be thrown.
in_tree | The SceneTree with which to associate this new root SceneTreeItem. |
in_canvas | The Canvas for this root SceneTreeItem. |
|
inline |
This constructor creates a SceneTreeItem which is not suitable for acting as a root in a SceneTree, but is suitable to be a SceneTreeItem under the root of the SceneTree. This constructor should be the one invoked in the overridden AddChild function.
in_tree | The SceneTree with which to associate this new SceneTreeItem. |
in_key | The Key for this SceneTreeItem. This value should come from the corresponding argument to AddChild. |
in_type | The type of this SceneTreeItem. This value should come from the corresponding argument to AddChild. |
in_title | The title for this SceneTreeItem. This value should come from the corresponding argument to AddChild. |
AddChild
|
inline |
This constructor creates a SceneTreeItem which is not suitable for acting as a root in a SceneTree, but is suitable to be a SceneTreeItem under the root of the SceneTree. This constructor should be the one invoked in the overridden AddChild function.
in_tree | The SceneTree with which to associate this new SceneTreeItem. |
in_key | The Key for this SceneTreeItem. This value should come from the corresponding argument to AddChild. |
in_type | The type of this SceneTreeItem. This value should come from the corresponding argument to AddChild. |
AddChild
|
pure virtual |
This function is used to create a new SceneTreeItem to be the child of this SceneTreeItem. This function will be invoked if this SceneTreeItem has children and Expand has been invoked on it. This function should contain any necessary calls to GUI toolkits to create the appropriate GUI elements, e.g., see the implementations in the mfc_sandbox or wpf_sandbox. Additionally, since this function requires the creation of a derived SceneTreeItem, that derived SceneTreeItem should use the base constructor which takes the same arguments this function.
in_key | The Key for this SceneTreeItem. Should be passed to as the corresponding argument to the base constructor. |
in_type | The type for this SceneTreeItem. Should be passed to as the corresponding argument to the base constructor. |
in_title | The title for this SceneTreeItem. Should be passed to as the corresponding argument to the base constructor. |
|
pure virtual |
This function is used to create a new SceneTreeItem to be the child of this SceneTreeItem. This function will be invoked if this SceneTreeItem has children and Expand has been invoked on it. This function should contain any necessary calls to GUI toolkits to create the appropriate GUI elements, e.g., see the implementations in the mfc_sandbox or wpf_sandbox. Additionally, since this function requires the creation of a derived SceneTreeItem, that derived SceneTreeItem should use the base constructor which takes the same arguments this function.
in_key | The Key for this SceneTreeItem. Should be passed to as the corresponding argument to the base constructor. |
in_type | The type for this SceneTreeItem. Should be passed to as the corresponding argument to the base constructor. |
|
inlinevirtual |
Share the underlying smart-pointer of the SceneTreeItem source.
in_that | The SceneTreeItem source of the assignment. |
|
inlinevirtual |
This function should be invoked when this SceneTreeItem needs to collapse. If this function is overridden, the overriding function should invoke this base function. Additionally, this function will always release all children for this SceneTreeItem when invoked.
|
inline |
Check if the source SceneTreeItem points to the same underlying impl as this SceneTreeItem.
in_that | The source SceneTreeItem to compare to this SceneTreeItem. |
|
inlinevirtual |
This function should be invoked when this SceneTreeItem needs to expand. If this function is overridden, the overriding function should invoke this base function. Additionally, this function will always repopulate the children for this SceneTreeItem when invoked.
|
inline |
Gets the item type for this SceneTreeItem. This is used to determine what type of data this SceneTreeItem represents in the SceneTree.
|
inline |
Gets the key for this SceneTreeItem. The type of the key depends on the SceneTree::ItemType for this SceneTreeItem.
|
inline |
Gets the key path for this SceneTreeItem.
|
inline |
Gets the title for this SceneTreeItem. This is the text that should be displayed for this SceneTreeItem in the SceneTree.
|
inline |
Gets the SceneTree associated with this SceneTreeItem. This provides a means of accessing the derived SceneTree by this SceneTreeItem if necessary.
|
inline |
Indicates whether this SceneTreeItem has any children.
|
inline |
Indicates whether this SceneTreeItem has the given ItemType mask.
in_mask | The ItemType mask to check against this SceneTreeItem. |
|
inline |
This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. This will cause elements along the path to this item (and this item itself) to be marked as selected if they aren't already. Depending on the type of the SceneTreeItem, sometimes a highlight is nonsensical. In this case, no highlight will be performed.
Select
|
inline |
This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. This will cause elements along the path to this item (and this item itself) to be marked as selected if they aren't already. Depending on the type of the SceneTreeItem, sometimes a highlight is nonsensical. In this case, no highlight will be performed.
Select
|
inline |
This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. This will cause elements along the path to this item (and this item itself) to be marked as selected if they aren't already. Depending on the type of the SceneTreeItem, sometimes a highlight is nonsensical. In this case, no highlight will be performed. If the options requested is not part of the associated SceneTree highlight options, it will be added to them.
in_highlight_options | The highlight options used during highlighting |
Select
|
inline |
Indicates whether this SceneTreeItem is able to be highlighted. Some items, like those in static trees, cannot be highlighted.
Highlight
IsHighlighted
|
inline |
Indicates whether this SceneTreeItem is currently highlighted with the options specified in the associated SceneTree. This may mean that the Highlight function on this SceneTreeItem was invoked, or that the key backing this SceneTreeItem was highlighted by the HighlightOperator or HighlightAreaOperator.
Highlight
Unhighlight
|
inline |
Indicates whether this SceneTreeItem is currently marked as selected.
Select
Unselect
|
inlinevirtual |
This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.
Reimplemented from HPS.Object.
|
inlinevirtual |
This function will be invoked when this SceneTreeItem should be marked as selected. Marking an item as selected means that the key backing this SceneTreeItem has been highlighted with the options specified in the associated SceneTree or is along a path in which a highlight has occurred. This highlighting may have come as a result of the Highlight function on a SceneTreeItem being invoked (not necessarily this SceneTreeItem), or potentially due to the HighlightOperator or HighlightAreaOperator highlighting the key backing this SceneTreeItem or highlighting some path which includes the key backing this SceneTreeItem. This function is meant to be overridden to allow one to change the appearance of a selected SceneTreeItem, e.g., by bolding the text or changing an icon, to signify this new state. If this function is overridden, the overriding function should invoke this base function.
|
inline |
This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. This can cause elements along the path to this item (and this item itself) to be marked as unselected unless those items lie along a path which is still highlighted. Depending on the type of the SceneTreeItem, sometimes an unhighlight is nonsensical. In this case, no unhighlight will be performed.
Unselect
|
inline |
This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. This can cause elements along the path to this item (and this item itself) to be marked as unselected unless those items lie along a path which is still highlighted. Depending on the type of the SceneTreeItem, sometimes an unhighlight is nonsensical. In this case, no unhighlight will be performed.
Unselect
|
inline |
This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. This can cause elements along the path to this item (and this item itself) to be marked as unselected unless those items lie along a path which is still highlighted. Depending on the type of the SceneTreeItem, sometimes an unhighlight is nonsensical. In this case, no unhighlight will be performed. If the options requested is not part of the associated SceneTree highlight options, it will be added to them.
Unselect
|
inlinevirtual |
This function will be invoked when this SceneTreeItem should be marked as unselected. Marking an item as unselected means that the key backing this SceneTreeItem is no longer highlighted with the options specified in the associated SceneTree or is no longer along a path in which a highlight has occurred. This unhighlighting may have come as a result of the Unhighlight function on a SceneTreeItem being invoked (not necessarily this SceneTreeItem), or potentially due to the HighlightOperator or HighlightAreaOperator unhighlighting the key backing this SceneTreeItem. or unhighlighting some path which includes the key backing this SceneTreeItem. This function is meant to be overridden to allow one to change the appearance of a selected SceneTreeItem, e.g., by no longer bolding the text or changing an icon, to signify this new state. If this function is overridden, the overriding function should invoke this base function.