HOldSelItem

Detailed Description

class HOldSelItem : public HSelectionItem

The HOldSelItem class implements selection using the old style highlighting which does not handle includes.

This class is purely provided for backward compatibility reasons and should be considered obsolete. HOldSelItem implement HSelectionItem interfaces using the old style of highlighting which couldn’t handle the multiply included segments/entities.

Public Functions

HOldSelItem(HC_KEY key, HSelectionSet *selection_set, char const *selection_path, HC_KEY include_key, HC_KEY includer_key)

Constructor

virtual ~HOldSelItem()
inline virtual char const *GetName() const
Returns:A character pointer denoting the name of operator.
virtual bool Equals(HSelectionItem const *i2) const
Parameters:i2 – An HOldSelItem object to be compared with this object
Returns:A true when the two selection elements are equal.
virtual bool Highlight()

Call this function to highlight the selection item

Returns:A true when the highlight is succesful
virtual bool UnHighlight()

Call this function to unhighlight the selection item

Returns:A true if the unhighlight is succesful
virtual bool IsHighlighted() const

Checks to see if an item is currently highlighted

Returns:true if the item is currently highlighted, false if not
virtual bool Delete()

Call this function to delete the selection item NOTE: If the selection is a non-instanced segment or entity it will be deleted. If the selection is an instanced segment or entity, it’s include link will be removed.

Returns:A true if the delete is succesful
inline virtual bool IsInstanced() const

Checks to see if the selection item has any segments/geometry which might be potentially shared. In the old selection behaviour we never handled instancing. To preserve the behaviour, this returns false.

inline virtual int GetIncludeCount() const
Returns:A count of number of include keys in the include path. Old selection doesn’t deal with it.
inline virtual const HC_KEY *const GetIncludeKeys() const
Returns:An array to include keys. The return pointer is meant for read-only purpose Old selection doesn’t deal with it.
inline virtual void GetIncludeKeys(HC_KEY[]) const
Parameters:includes – An array of include keys (returned to the user). Note that the caller must ensure that the array is of the appropriate size, e.g, via the GetIncludeCount function.
virtual bool QueryIncludeDependency(HC_KEY include_key, HC_KEY &ret_dependent_key)

Finds out if the selection item has any dependency on the include key being provide. If it has, the api returns true and returns which key is dependent as the second argument.

Parameters:
  • include_key – HC_KEY to include key on which the dependency is wanted
  • ret_dependent_key – HC_KEY to segment/entity which depends on the include key
Returns:

true if the item has dependency on the include_key

virtual bool UpdateIncludeDependency(HC_KEY include_key, HC_KEY dependent_key, HC_KEY replacement_key)

Call to selection item to update its selection data. Specifically the key which depended on the include key and have it replaced.

Parameters:
  • include_key – HC_KEY to include key which is deleted/going to be deleted
  • dependent_key – HC_KEY to segment/entity which depends on the include key
  • replacement_key – new HC_KEY as a replacement to the dependent key
Returns:

true if the dependency has been successfully updated