Home Reference Source Test Repository
public class | source

AlgorithmTool

Extends:

Tool → AlgorithmTool

Tool for running algorithms.

Member Summary

Public Members
public
public
public get

Get the mode input types from the current algorithm.

public get

Get the mode inputs from the current algorithm.

Method Summary

Public Methods
public

cancel()

Called when switching to a different tool to cancel any incomplete actions.

public

Called when the mode is changed.

public

selectObject(event: Event, graph: Graph, obj: Node | Edge | Label, x: number, y: number)

Handler for object selection.

public

Returns a boolean indicating whether or not the mode-specific inputs should be submitted together.

public

Callback function that is called after submitting mode-specific inputs.

public

Returns a string that will be displayed on the submit button if submitModeInputs() returns true;

Inherited Summary

From class Tool
public
public

abortSelect(event: Event, graph: Graph, x: number, y: number)

Handler for aborted selections.

public

Called when changing to this tool (if necessary).

public

cancel()

Called when switching to a different tool to cancel any incomplete actions.

public

Called when the mode is changed.

public

dragNone(event: Event, graph: Graph, x: number, y: number)

Handler for dragging mouse on empty space.

public

dragObject(event: Event, graph: Graph, srcObj: Node | Edge | Label, x: number, y: number)

Handler for object dragging.

public

dragOverObject(event: Event, graph: Graph, obj: Node | Edge | Label, x: number, y: number)

Handler for dragging mouse over an object.

public

dropOnNone(event: Event, graph: Graph, droppedObj: Node | Edge | Label, x: number, y: number)

Handler for dropping object on empty space.

public

dropOnObject(event: Event, graph: Graph, droppedObj: Node | Edge | Label, destObj: Node | Edge | Label, x: number, y: number)

Handler for object dropping on another object.

public

Returns a boolean indicating whether or not the tool has inputs.

public

Returns a boolean indicating whether or not the tool has mode-specific inputs.

public

Returns a boolean indicating whether or not the tool has modes.

public

preDragNone(event: Event, graph: Graph, x: number, y: number)

Called before the dragNone() handler.

public

preDragObject(event: Event, graph: Graph, srcObj: Node | Edge | Label, x: number, y: number): boolean

Returns a boolean indicating whether or not the tool should be able to handle dragging.

public

preSelectNone(event: Event, graph: Graph, x: number, y: number)

Called before the selectNone() handler.

public

preSelectObject(event: Event, graph: Graph, obj: Node | Edge | Label, x: number, y: number): boolean

Returns a boolean indicating whether or not the tool should be able to handle selection.

public

selectNone(event: Event, graph: Graph, x: number, y: number)

Handler for clicking empty space.

public

selectObject(event: Event, graph: Graph, obj: Node | Edge | Label, x: number, y: number)

Handler for object selection.

Public Members

public currentInput: * source

public currentMode: * source

Override:

Tool#currentMode

public get modeInputTypes: Array<InputType>: * source

Get the mode input types from the current algorithm.

Return:

Array<InputType>

Array of input definitions.

public get modeInputs: Object<string, *>: * source

Get the mode inputs from the current algorithm.

Return:

Object<string, *>

Object containing stored input values.

Public Methods

public cancel() source

Called when switching to a different tool to cancel any incomplete actions. Cancel any active input selection.

Override:

Tool#cancel

public changeMode(mode: string) source

Called when the mode is changed. Set the algorithm in the sidebar to a new instance of the current algorithm.

Override:

Tool#changeMode

Params:

NameTypeAttributeDescription
mode string

Mode name.

public selectObject(event: Event, graph: Graph, obj: Node | Edge | Label, x: number, y: number) source

Handler for object selection. Used to select graph objects for algorithm inputs.

Override:

Tool#selectObject

Params:

NameTypeAttributeDescription
event Event

Event object from event listener.

graph Graph

The current graph object.

obj Node | Edge | Label

Selected graph component.

x number

Mouse x-coordinate (in canvas coordinates).

y number

Mouse y-coordinate (in canvas coordinates).

public submitModeInputs(): boolean source

Returns a boolean indicating whether or not the mode-specific inputs should be submitted together.

Return:

boolean

Whether or not the mode-specific inputs should be submitted together.

public submitModeInputsCallback() source

Callback function that is called after submitting mode-specific inputs.

public submitModeInputsText(): string source

Returns a string that will be displayed on the submit button if submitModeInputs() returns true;

Return:

string

Text to display on submit button for mode-specific inputs.