# IRsEditor Interface Reference

Inherits IUnknown.

List of all members.

## Public Member Functions
HRESULT | SetEditorFeature (GUID gEditorFeature, RtBool bEnabled)
HRESULT | GetEditorFeature (GUID gEditorFeature, RtBool *bEnabled)
HRESULT | GetEditableSubtreeRoot (IRsNode *pNode, SAFEARRAY **ppExpandedNode)
HRESULT | ActivateDefaultTool (IRcUndoRedoGroup *spUndoRedo)

## Detailed Description

IRsEditor is interface for mesh editors, used for communcation between mesh editor tools and mesh editor handler. Various tools can implement this interface to allow cooperation with mesh editing tools. On the other hand, mesh editor tools should use mesh editor interface to handle selection translation to editable meshes.

## Member Function Documentation

HRESULT IRsEditor::SetEditorFeature | ( | GUID | gEditorFeature,
|  | RtBool | bEnabled |
| ) |  |  |

Set mesh editor feature. Used by modifier nodes during initialization,
to enable or disable various editor features like topology operations or openning preferences panel etc.

Parameters:

  | gEditorFeature | Mesh editor feature. eg. MESHEDITOR_TOPOLOGY_OPERATIONS
  | bEnable | [in] Set state of feature.

HRESULT IRsEditor::GetEditorFeature | ( | GUID | gEditorFeature,
|  | RtBool * | bEnabled |
| ) |  |  |

Get mesh editor feature state. Used by modifier nodes to check for various (custom) features of mesh editor and also for detection of mesh editor type for custom editor-modifier pairs.

Parameters:

  | gEditorFeature | Mesh editor feature. eg. MESHEDITOR_TOPOLOGY_OPERATIONS

Returns:
  bEnabled [out,retval] State of feature.

HRESULT IRsEditor::GetEditableSubtreeRoot | ( | IRsNode * | pNode,
|  | SAFEARRAY ** | ppExpandedNode |
| ) |  |  |

For specified node return root of subtree(s) that are editable.

HRESULT IRsEditor::ActivateDefaultTool | ( | IRcUndoRedoGroup * | spUndoRedo | ) |

Activate default mesh editor tool. Method is called to deactivate mesh edit tools.