EditManipulator.HandleProvider Class

A handle provider maintains a set of controls used to modify element(s) or pickable decorations. The provider works in conjunction with any PrimitiveTool that raises events for ToolAdmin.manipulatorToolEvent.

see SelectTool The default PrimitiveTool that supports handle providers.

Methods

Name Description
constructor(iModel: IModelConnection): EditManipulator.HandleProvider Create a new handle provider to listen for ToolAdmin.manipulatorToolEvent.  
clearControls(): void Protected    
createControls(): Promise<boolean> ProtectedAbstract The provider is responsible for checking if modification by controls is valid.  
decorate(_context: DecorateContext): void Sub-classes should override to display the pickable graphics for their controls.  
modifyControls(_hit: HitDetail, _ev: BeButtonEvent): Promise<boolean> ProtectedAbstract A provider can install an InputCollector to support interactive modification.  
onDecorationButtonEvent(hit: HitDetail, ev: BeButtonEvent): Promise<EventHandled> Event raised by a PrimitiveTool that supports handle providers to allow a pickable decoration to respond to being located.  
onDoubleClick(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> Protected Sub-classes can override to perform some operation for a double click on a handle.  
onManipulatorEvent(_eventType: EditManipulator.EventType): void    
onManipulatorToolEvent(_tool: Tool, event: ManipulatorToolEvent): void Event raised by a PrimitiveTool that supports handle providers.  
onRightClick(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> Protected Sub-classes can override to present a menu for a right click on a handle.  
onSelectionChanged(ev: SelectionSetEvent): void Event raised by SelectionSet when the active selection changes.  
onTouchTap(_hit: HitDetail, _ev: BeButtonEvent): Promise<EventHandled> Protected Sub-classes can override to respond to a touch tap on a handle.  
stop(): void Protected Call to clear this handle provider.  
updateControls(): Promise<void> Protected    
updateDecorationListener(add: boolean): void Protected Register for decorate event to start displaying control handles.  

Properties

Name Type Description
_isActive Protected boolean    
_removeDecorationListener Protected undefined | () => void    
_removeManipulatorToolListener Protected undefined | () => void    
_removeSelectionListener Protected undefined | () => void    
iModel IModelConnection    

Defined in

Last Updated: 20 June, 2023