< Home

< Table of Contents

REFERENCE MANUAL

HPS.SceneTreeItem Class Referenceabstract

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. More...

Inheritance diagram for HPS.SceneTreeItem:
HPS.Sprocket HPS.Object

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. 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. 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. 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. More...
 
override int GetHashCode ()
 
HPS.SceneTree.ItemType GetItemType ()
 Gets the item type for this SceneTreeItem. More...
 
HPS.Key GetKey ()
 Gets the key for this SceneTreeItem. More...
 
string GetTitle ()
 Gets the title for this SceneTreeItem. More...
 
HPS.SceneTree GetTree ()
 Gets the SceneTree associated with this SceneTreeItem. 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 ()
 This function will cause this SceneTreeItem to be highlighted with the options specified in the associated SceneTree. More...
 
bool IsHighlightable ()
 Indicates whether this SceneTreeItem is able to be highlighted. More...
 
bool IsHighlighted ()
 Indicates whether this SceneTreeItem is currently highlighted with the options specified in the associated SceneTree. 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. More...
 
 SceneTreeItem ()
 The default constructor creates an uninitialized SceneTreeItem object. 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. More...
 
 SceneTreeItem (HPS.SceneTree in_tree, HPS.View in_view)
 This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. More...
 
 SceneTreeItem (HPS.SceneTree in_tree, HPS.Layout in_layout)
 This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. More...
 
 SceneTreeItem (HPS.SceneTree in_tree, HPS.Canvas in_canvas)
 This constructor creates a SceneTreeItem suitable for acting as a root in a SceneTree. 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. 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. 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. More...
 
void Unhighlight ()
 This function will remove the highlight with the options specified in the associated SceneTree from this SceneTreeItem. More...
 
virtual void Unselect ()
 This function will be invoked when this SceneTreeItem should be marked as unselected. More...
 
- Public Member Functions inherited from HPS.Sprocket
override void Dispose ()
 
 Sprocket (HPS.Sprocket in_that)
 
- Public Member Functions inherited from HPS.Object
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. More...
 
bool HasType (HPS.Type in_mask)
 This function indicates whether this Object has the given Type mask. More...
 
 Object (HPS.Object in_that)
 The move constructor creates an Object by transferring the underlying impl of the rvalue reference to this Object thereby avoiding a copy and allocation. More...
 
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. More...
 

Static Public Member Functions

static bool operator!= (HPS.SceneTreeItem a, HPS.SceneTreeItem b)
 
static bool operator== (HPS.SceneTreeItem a, HPS.SceneTreeItem b)
 
- Static Public Member Functions inherited from HPS.Object
static IntPtr ClassID< T > ()
 

Protected Member Functions

override void deleteCptr ()
 
void DtorCallback (IntPtr p)
 
- Protected Member Functions inherited from HPS.Sprocket
override void deleteCptr ()
 
- Protected Member Functions inherited from HPS.Object
virtual IntPtr GetNonDirectorClassID ()
 

Additional Inherited Members

- Public Types inherited from HPS.Sprocket
enum  UpdateType { Synchronous = 0, Asynchronous = 1 }
 
- Protected Attributes inherited from HPS.Object
bool cMemOwn
 
HandleRef cptr
 
HandleRef scptr
 

Detailed Description

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.

Constructor & Destructor Documentation

HPS.SceneTreeItem.SceneTreeItem ( )

The default constructor creates an uninitialized SceneTreeItem object.

The Type() function will return Type::None.

HPS.SceneTreeItem.SceneTreeItem ( HPS.SceneTreeItem  in_that)

The copy constructor creates a SceneTreeItem object that shares the underlying smart-pointer of the source SceneTreeItem.

Parameters
in_thatThe source <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref> to copy.
HPS.SceneTreeItem.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.

Parameters
in_treeThe <ref refid="class_h_p_s_1_1_scene_tree" kindref="compound">SceneTree</ref> with which to associate this new root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
in_modelThe <ref refid="class_h_p_s_1_1_model" kindref="compound">Model</ref> for this root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.

SceneTree::SetRoot

HPS.SceneTreeItem.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.

Parameters
in_treeThe <ref refid="class_h_p_s_1_1_scene_tree" kindref="compound">SceneTree</ref> with which to associate this new root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
in_viewThe <ref refid="class_h_p_s_1_1_view" kindref="compound">View</ref> for this root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.

SceneTree::SetRoot

HPS.SceneTreeItem.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.

Parameters
in_treeThe <ref refid="class_h_p_s_1_1_scene_tree" kindref="compound">SceneTree</ref> with which to associate this new root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
in_layoutThe <ref refid="class_h_p_s_1_1_layout" kindref="compound">Layout</ref> for this root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.

SceneTree::SetRoot

HPS.SceneTreeItem.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.

Parameters
in_treeThe <ref refid="class_h_p_s_1_1_scene_tree" kindref="compound">SceneTree</ref> with which to associate this new root <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.

SceneTree::SetRoot

HPS.SceneTreeItem.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.

Parameters
in_treeThe <ref refid="class_h_p_s_1_1_scene_tree" kindref="compound">SceneTree</ref> with which to associate this new <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
in_keyThe Key for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. This value should come from the corresponding argument to AddChild.
in_typeThe type of this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. This value should come from the corresponding argument to AddChild.
in_titleThe title for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. This value should come from the corresponding argument to AddChild.

AddChild

HPS.SceneTreeItem.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.

Parameters
in_treeThe <ref refid="class_h_p_s_1_1_scene_tree" kindref="compound">SceneTree</ref> with which to associate this new <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
in_keyThe Key for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. This value should come from the corresponding argument to AddChild.
in_typeThe type of this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. This value should come from the corresponding argument to AddChild.

AddChild

Member Function Documentation

abstract HPS.SceneTreeItem HPS.SceneTreeItem.AddChild ( HPS.Key  in_key,
HPS.SceneTree.ItemType  in_type,
string  in_title 
)
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.

Parameters
in_keyThe Key for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. Should be passed to as the corresponding argument to the base constructor.
in_typeThe type for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. Should be passed to as the corresponding argument to the base constructor.
in_titleThe title for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. Should be passed to as the corresponding argument to the base constructor.
Returns
A newly created object derived from SceneTreeItem.
abstract HPS.SceneTreeItem HPS.SceneTreeItem.AddChild ( HPS.Key  in_key,
HPS.SceneTree.ItemType  in_type 
)
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.

Parameters
in_keyThe Key for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. Should be passed to as the corresponding argument to the base constructor.
in_typeThe type for this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>. Should be passed to as the corresponding argument to the base constructor.
Returns
A newly created object derived from SceneTreeItem.
virtual void HPS.SceneTreeItem.Assign ( HPS.SceneTreeItem  in_that)
virtual

Share the underlying smart-pointer of the SceneTreeItem source.

Parameters
in_thatThe <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref> source of the assignment.
Returns
A reference to this SceneTreeItem.
virtual void HPS.SceneTreeItem.Collapse ( )
virtual

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.

bool HPS.SceneTreeItem.Equals ( HPS.SceneTreeItem  in_that)

Check if the source SceneTreeItem points to the same underlying impl as this SceneTreeItem.

Parameters
in_thatThe source <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref> to compare to this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
Returns
true if the objects reference the same impl, false otherwise.
virtual void HPS.SceneTreeItem.Expand ( )
virtual

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.

HPS.SceneTree.ItemType HPS.SceneTreeItem.GetItemType ( )

Gets the item type for this SceneTreeItem.

This is used to determine what type of data this SceneTreeItem represents in the SceneTree.

Returns
The item type for this SceneTreeItem.
HPS.Key HPS.SceneTreeItem.GetKey ( )

Gets the key for this SceneTreeItem.

The type of the key depends on the SceneTree::ItemType for this SceneTreeItem.

Returns
The key for this SceneTreeItem.
string HPS.SceneTreeItem.GetTitle ( )

Gets the title for this SceneTreeItem.

This is the text that should be displayed for this SceneTreeItem in the SceneTree.

Returns
The title for this SceneTreeItem.
HPS.SceneTree HPS.SceneTreeItem.GetTree ( )

Gets the SceneTree associated with this SceneTreeItem.

This provides a means of accessing the derived SceneTree by this SceneTreeItem if necessary.

Returns
The SceneTree associated with this SceneTreeItem.
bool HPS.SceneTreeItem.HasChildren ( )

Indicates whether this SceneTreeItem has any children.

Returns
Whether this SceneTreeItem has any children.
bool HPS.SceneTreeItem.HasItemType ( HPS.SceneTree.ItemType  in_mask)

Indicates whether this SceneTreeItem has the given ItemType mask.

Parameters
in_maskThe ItemType mask to check against this <ref refid="class_h_p_s_1_1_scene_tree_item" kindref="compound">SceneTreeItem</ref>.
Returns
true if this SceneTreeItem has the given ItemType mask, false otherwise.
void HPS.SceneTreeItem.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.

Select

bool HPS.SceneTreeItem.IsHighlightable ( )

Indicates whether this SceneTreeItem is able to be highlighted.

Some items, like those in static trees, cannot be highlighted.

Returns
Whether this SceneTreeItem is highlightable.

Highlight

IsHighlighted

bool HPS.SceneTreeItem.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.

Returns
Whether this SceneTreeItem is currently highlighted with the options specified in the associated SceneTree.

Highlight

Unhighlight

bool HPS.SceneTreeItem.IsSelected ( )

Indicates whether this SceneTreeItem is currently marked as selected.

Returns
Whether this SceneTreeItem is currently marked as selected.

Select

Unselect

override HPS.Type HPS.SceneTreeItem.ObjectType ( )
virtual

This function returns the type the object, as declared.

This does not necessarily give the true type of the underlying object.

Returns
The declared type of the object in question, which may differ from the true, underlying type.

Reimplemented from HPS.Object.

virtual void HPS.SceneTreeItem.Select ( )
virtual

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.

void HPS.SceneTreeItem.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.

Unselect

virtual void HPS.SceneTreeItem.Unselect ( )
virtual

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.


The documentation for this class was generated from the following file: