SelectTool

SelectTool

The SelectTool is a tool for selecting, moving, and deleting stroke segments on the canvas. It extends the Tool class.

Class Definition

export class SelectTool extends Tool {
    // ...
}

Constructor

new SelectTool(canvas, [options])

Creates a new SelectTool instance.

  • canvas (OMDCanvas): The canvas instance.
  • [options] (object, optional): Configuration options for the tool.
    • selectionColor (string, optional): The color of the selection box. Defaults to '#007bff'.
    • selectionOpacity (number, optional): The opacity of the selection box. Defaults to 0.3.

Public Methods

onPointerDown(event)

Handles the pointer down event to start a selection.

  • event (PointerEvent): The pointer event.

onPointerMove(event)

Handles the pointer move event to update the selection box.

  • event (PointerEvent): The pointer event.

onPointerUp(event)

Handles the pointer up event to complete the selection.

  • event (PointerEvent): The pointer event.

onCancel()

Cancels the current selection operation.

onKeyboardShortcut(key, event)

Handles keyboard shortcuts for selection-related actions.

  • key (string): The key that was pressed.
  • event (KeyboardEvent): The keyboard event.
  • Returns: boolean - True if the shortcut was handled, false otherwise.

getCursor()

Gets the cursor for the tool.

  • Returns: string - The CSS cursor name.

clearSelection()

Clears the current selection.

Properties

  • displayName (string): The display name of the tool.
  • description (string): A description of the tool.
  • icon (string): The icon for the tool.
  • shortcut (string): The keyboard shortcut for the tool.
  • category (string): The category of the tool.
  • selectedSegments (Map<string, Set<number>>): A map of selected segments, where the key is the stroke ID and the value is a set of segment indices.