• Public
  • Public/Protected
  • All

Class ActionTool


The ActionTool is responsible for handling and dispatching mouse events on GraphObjects that have GraphObject.isActionable set to true. This is how one implements "controls", such as buttons or sliders or knobs, as GraphObjects that can be inside Parts without interfering with the standard tool behaviors.

This tool allows individual GraphObjects (usually Panels) to handle mouse-down-move-up events without having to define new Tools. It does this by calling GraphObject.actionDown, GraphObject.actionMove, GraphObject.actionUp, and GraphObject.actionCancel on objects that have GraphObject.isActionable set to true.

This tool is a standard mouse-down tool, the ToolManager.actionTool.

This tool does not utilize any Adornments or tool handles. This tool does not modify the model or conduct any transaction, although the actions that this invokes may do so.

It would be very unusual to want to customize this tool.





Virtual Override canStart

  • canStart(): boolean
  • This tool can run when there is a mouse-down on an object with GraphObject.isActionable true or if the object is within a Panel that "isActionable".

    This method may be overridden. Please read the Introduction page on Extensions for how to override methods and how to call this base method.

    Returns boolean

Override doCancel

  • doCancel(): void

Override doMouseDown

  • doMouseDown(): void

Override doMouseMove

  • doMouseMove(): void

Override doMouseUp

  • doMouseUp(): void