BlockSuite API Documentation / @blocksuite/blocks / EdgelessToolController
Class: abstract EdgelessToolController<Tool> 
Extended by 
Type Parameters 
• Tool extends EdgelessTool = EdgelessTool
Constructors 
new EdgelessToolController() 
new EdgelessToolController<
Tool>(service):EdgelessToolController<Tool>
Parameters 
• service: EdgelessRootService
Returns 
EdgelessToolController<Tool>
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:38
Properties 
_draggingArea 
protected_draggingArea:null|SelectionArea=null
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:12
_edgeless 
protected_edgeless:EdgelessRootBlockComponent
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:14
_service 
protected_service:EdgelessRootService
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:16
enableHover 
enableHover:
boolean=false
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:18
tool 
abstracttool:Tool
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:20
Accessors 
_blocks 
getprotected_blocks():EdgelessBlockModel<GfxCompatibleProps>[]
Returns 
EdgelessBlockModel<GfxCompatibleProps>[]
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:22
_doc 
getprotected_doc():Doc
Returns 
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:26
_surface 
getprotected_surface():SurfaceBlockComponent
Returns 
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:30
draggingArea 
getdraggingArea():null|SelectionArea
Returns 
null | SelectionArea
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:34
Methods 
afterModeSwitch() 
abstractafterModeSwitch(newMode):void
Parameters 
• newMode: Tool
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:42
beforeModeSwitch() 
abstractbeforeModeSwitch(prevMode):void
Parameters 
• prevMode: Tool
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:43
mount() 
mount(
edgeless):void
Parameters 
• edgeless: EdgelessRootBlockComponent
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:44
onContainerClick() 
abstractonContainerClick(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:47
onContainerContextMenu() 
abstractonContainerContextMenu(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:48
onContainerDblClick() 
abstractonContainerDblClick(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:49
onContainerDragEnd() 
abstractonContainerDragEnd(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:50
onContainerDragMove() 
abstractonContainerDragMove(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:51
onContainerDragStart() 
abstractonContainerDragStart(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:52
onContainerMouseMove() 
abstractonContainerMouseMove(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:53
onContainerMouseOut() 
abstractonContainerMouseOut(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:54
onContainerPointerDown() 
abstractonContainerPointerDown(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:55
onContainerTripleClick() 
abstractonContainerTripleClick(e):void
Parameters 
• e: PointerEventState
Returns 
void
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:56
onPressShiftKey() 
abstractonPressShiftKey(pressed):void
Parameters 
• pressed: boolean
Returns 
void
Warning 
Check !ev.repeat before calling this function in KeyboardEvents where needed
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:61
onPressSpaceBar() 
abstractonPressSpaceBar(pressed):void
Parameters 
• pressed: boolean
Returns 
void
Warning 
Check !ev.repeat before calling this function in KeyboardEvents where needed
Defined in 
packages/blocks/src/root-block/edgeless/tools/edgeless-tool.ts:66