About events in custom tools
The below event API's are defined in DgnElementSetTool class which is part of library Bentley.DgnPlatformNET. The class inheriting DgnElementSetTool needs to override these API's in order to use them.
bool OnDataButton(DgnButtonEvent ev); | Mouse Events | Is called when a data point is entered. |
void OnDynamicFrame(DgnButtonEvent ev); | Element Dynamics | Is called to display dynamic elements. |
bool OnInstall(); | Installation and Cleanup | Is callled by InstallTool before the tool instance becomes the current command. |
bool OnModelEndDrag(DgnButtonEvent ev); | Extended Selection | Is called when a drag event completes. |
bool OnModelMotion(DgnButtonEvent ev); | Extended Selection | Is called when cursor is moving in a view. Called during drag selection to force viewport refresh. |
bool OnModelStartDrag(DgnButtonEvent ev); | Extended Selection | Is called when a drag event is initiated. |
bool OnModifierKeyTransition(bool wentDown, int key); | Extended Selection | Is called when Control, Shift, or Alt qualifier keys are pressed or released |
void OnPostInstall(); | Installation and Cleanup | Is called when the command starts Is called by InstallTool AFTER the tool instance becomes the current command. |
void OnReinitialize(); | Installation and Cleanup | Is called to reset tool to initial state A tool may choose to revert to its initial state instead of installing a new tool instance. |
bool OnResetButton(DgnButtonEvent ev); | Mouse Events | Is called when the user clicks reset / right click |
StatusInt OnElementModifyClip(Element el, FenceParameters fp, FenceClipFlags options); | Modifying Elements | Is called to allow tool to apply fence clip to elements |
bool OnModifyComplete(DgnButtonEvent ev); | Modifying Elements | Is called to decide if tool should exit or restart. |
bool OnPostLocate(HitPath path, out string cantAcceptReason); | Locating Elements | Is called during a locate to allow tool to filter which elements can be selected |