Last updated

API / geotoolkit / controls / tools / AbstractEditingTool / AbstractEditingTool

Class: AbstractEditingTool

tools.AbstractEditingTool.AbstractEditingTool

The base abstract class for tools that are used to create/modify nodes, using AbstractEditorBase

Hierarchy

Table of contents

Constructors
Methods
Css Properties
Name Type Description
editmodeEditModePaint editor editing mode to determine which elements/features are allowed
editorOptionsThe extra editor properties to be provided for every new editor (see
editor-enabledbooleanEnabled state
editor-layerCompositeNodeManipulator layer
editor-layer-clippingbooleanEnable clipping, this does not consider the clipstyle, it is related to bounds-clipping
editor-layer-clipstyleClipStyleClipping style
editor-layer-clipstyle-evenoddbooleanTrue if evenodd mode is on ('nonzero' mode otherwise)
editor-layer-clipstyle-geometryGraphicsPathClipping geometry
editor-layer-clipstyle-geometry-boundsRectBounds
editor-layer-clipstyle-geometry-bounds-heightnumberHeight
editor-layer-clipstyle-geometry-bounds-readonlybooleanReadonly
editor-layer-clipstyle-geometry-bounds-widthnumberWidth
editor-layer-clipstyle-geometry-bounds-xnumberLeft
editor-layer-clipstyle-geometry-bounds-ynumberTop
editor-layer-clipstyleGraphicsPathClipping style
editor-layer-cssclassstringThe css class name of this node
editor-layer-csscursorstringCSS cursor associated with node
editor-layer-cssstylestringCSS style to be applied to inserted elements
editor-layer-idstring | numberId of the node, its a unique identifier
editor-layer-infinitybooleanMode to render outside the model limits
editor-layer-localtransformTransformationLocal transformation
editor-layer-localtransform-dxnumberX axis translation
editor-layer-localtransform-dynumberY axis translation
editor-layer-localtransform-xxnumberX scale
editor-layer-localtransform-xynumberXy skew
editor-layer-localtransform-yxnumberYx skew
editor-layer-localtransform-yynumberY scale
editor-layer-marginsnumber | stringIt has properties for specifying the margins for each side
editor-layer-namestringName of the node. It is often used for debugging purposes or to simplify queries
editor-layer-opacitynumberNode opacity (from 0 to 1). If it is undefined or null it inherits property from the parent. It changes globalAlpha on the rendering context
editor-layer-opacityblendmodeBlendModeNode opacity mode to blend it
editor-layer-scalescrollstrategyScaleScrollStrategyScale scroll strategy
editor-layer-scalescrollstrategy-enabledbooleanEnable flag
editor-layer-selectablebooleanSelectable node, a boolean to determine if selection should consider this node
editor-layer-taganyCustom information associated with node. It is a user object which can be used by client code to store information or attach an application object to the shape
editor-layer-transformstringAdditional CSS transformation applied to node or 'none'
editor-layer-transformTransformationAdditional CSS transformation applied to node or 'none'
editor-layer-visiblebooleanVisibility of the node, a boolean to determine if the node should be rendered or not
editor-layer-z-indexnumberDefine node z-index
editor-mouseradiusnumberDevice radius for mouse events
editor-namestringName of the tool used like cross-hair etc
editor-touchradiusnumberDevice radius for touch events
editorOptionsThe extra editor properties to be provided for every new editor (see
editor-bboxPathBounding box path to draw bounding rectangle OR bounding box path properties (see
editor-bbox-boundsRectBounds
editor-bbox-clipstyleClipStyleClipping style
editor-bbox-clipstyleGraphicsPathClipping style
editor-bbox-cssclassstringThe css class name of this node
editor-bbox-csscursorstringCSS cursor associated with node
editor-bbox-cssstylestringCSS style to be applied to inserted elements
editor-bbox-fillstylestringStyle applied on fill
editor-bbox-fillstyleFillStyleStyle applied on fill
editor-bbox-fillstyle-colorstringColor in CSS form
editor-bbox-fillstyle-evenoddmodebooleanEven-odd fill mode
editor-bbox-fillstyle-fillpatternPatternPattern
editor-bbox-fillstyle-fillpattern-containernamestringAn optional container name, which creates an image pattern. This parameter is used for serialization if you want to save are reference to pattern instead of the pattern itself
editor-bbox-fillstyle-fillpattern-patternnamestringName of this pattern for indexing
editor-bbox-fillstyle-fillpattern-scalablebooleanFlag that sets scalability of the pattern coordinates, or relative to the shape it is filling (It is not supported)
editor-bbox-fillstyle-foregroundstringForeground color
editor-bbox-fillstyle-patternPatternPattern
editor-bbox-geometryGraphicsPathGeometry the path
editor-bbox-idstring | numberId of the node, its a unique identifier
editor-bbox-linestylestringStyle applied on outline
editor-bbox-linestyleLineStyleStyle applied on outline
editor-bbox-linestyle-colorstringColor in CSS form
editor-bbox-linestyle-fillstringOptional fill style to be used to fill lines generated with this style
editor-bbox-linestyle-fillFillStyleOptional fill style to be used to fill lines generated with this style
editor-bbox-linestyle-linecapCapStyleThe line cap style
editor-bbox-linestyle-linedashoffsetnumberLine dash offset of dashed line
editor-bbox-linestyle-linejoinJoinStyleThe line join style
editor-bbox-linestyle-pixelsnapmodebooleanPixel Snap Mode, default(
editor-bbox-linestyle-scalablebooleanTrue if width should depend on transformation
editor-bbox-linestyle-unitstringOptional unit for the width
editor-bbox-linestyle-widthnumber | stringThe line thickness
editor-bbox-localtransformTransformationLocal transformation
editor-bbox-marginsnumber | stringIt has properties for specifying the margins for each side
editor-bbox-namestringName of the node. It is often used for debugging purposes or to simplify queries
editor-bbox-opacitynumberNode opacity (from 0 to 1). If it is undefined or null it inherits property from the parent. It changes globalAlpha on the rendering context
editor-bbox-opacityblendmodeBlendModeNode opacity mode to blend it
editor-bbox-scalescrollstrategyScaleScrollStrategyScale scroll strategy
editor-bbox-selectablebooleanSelectable node, a boolean to determine if selection should consider this node
editor-bbox-taganyCustom information associated with node. It is a user object which can be used by client code to store information or attach an application object to the shape
editor-bbox-transformstringAdditional CSS transformation applied to node or 'none'
editor-bbox-transformTransformationAdditional CSS transformation applied to node or 'none'
editor-bbox-visiblebooleanVisibility of the node, a boolean to determine if the node should be rendered or not
editor-bbox-z-indexnumberDefine node z-index
editor-editmodeEditModeNode edit mode
editor-ghostOptionsOptions for
editor-ghost-cssclassstringThe css class name of this node
editor-ghost-idstring | numberId of the node, its a unique identifier
editor-ghost-namestringName of the node. It is often used for debugging purposes or to simplify queries
editor-ghost-selectablebooleanSelectable node, a boolean to determine if selection should consider this node
editor-ghost-taganyCustom information associated with node. It is a user object which can be used by client code to store information or attach an application object to the shape
editor-ghost-visiblebooleanVisibility of the node, a boolean to determine if the node should be rendered or not
editor-ghost-z-indexnumberDefine node z-index
editor-ghostGhostOptionsOptions for
editor-ghost-fillstylestringGhost fill style
editor-ghost-fillstyleFillStyleGhost fill style
editor-ghost-linestylestringGhost line style
editor-ghost-linestyleLineStyleGhost line style
editor-ghost-opacitynumberGhost opacity from 0 to 1
editor-handlesHandlesOptionsHandles properties
editor-handles-bboxOptionsBbox resize handles properties (see
editor-handles-bboxOptionsBbox resize handles properties (see
editor-handles-bbox-clipstyleClipStyleClipping style
editor-handles-bbox-clipstyleGraphicsPathClipping style
editor-handles-bbox-csscursorstringCSS cursor associated with node
editor-handles-bbox-cssstylestringCSS style to be applied to inserted elements
editor-handles-bbox-localtransformTransformationLocal transformation
editor-handles-bbox-marginsnumber | stringIt has properties for specifying the margins for each side
editor-handles-bbox-opacitynumberNode opacity (from 0 to 1). If it is undefined or null it inherits property from the parent. It changes globalAlpha on the rendering context
editor-handles-bbox-opacityblendmodeBlendModeNode opacity mode to blend it
editor-handles-bbox-scalescrollstrategyScaleScrollStrategyScale scroll strategy
editor-handles-bbox-transformstringAdditional CSS transformation applied to node or 'none'
editor-handles-bbox-transformTransformationAdditional CSS transformation applied to node or 'none'
editor-handles-bboxOptionsBbox resize handles properties (see
editor-handles-bbox-fillstylestringStyle applied on fill
editor-handles-bbox-fillstyleFillStyleStyle applied on fill
editor-handles-bbox-linestylestringStyle applied on outline
editor-handles-bbox-linestyleLineStyleStyle applied on outline
editor-handles-bboxOptionsBbox resize handles properties (see
editor-handles-bbox-alignmentAnchorTypeAlignment according to the anchor point
editor-handles-bbox-axnumberAnchor x position
editor-handles-bbox-aynumberAnchor y position
editor-handles-bbox-heightnumberShape height
editor-handles-bbox-ispointingupbooleanDefines whether the shape is always pointing up
editor-handles-bbox-layoutstyleLayoutStyleLayout style to specify how to lay out shape
editor-handles-bbox-layoutstyle-constraintSizeConstraintLayout constrains
editor-handles-bbox-layoutstyle-flexgrownumberNumber specifying how much the item will grow relative to the rest of the items inside the same container
editor-handles-bbox-layoutstyle-flexshrinknumberNumber specifying how much the item will shrink relative to the rest of the items inside the same container
editor-handles-bbox-layoutstyle-floatstringFloat position
editor-handles-bbox-layoutstyle-positionstringLayout position
editor-handles-bbox-layoutstyle-sizenumber | stringLayout size
editor-handles-bbox-maxdimensionDimensionMaximum size for rendering
editor-handles-bbox-maxdimension-heightnumberHeight of dimension
editor-handles-bbox-maxdimension-widthnumberWidth of dimension or properties
editor-handles-bbox-mindimensionDimensionMinimum size for rendering
editor-handles-bbox-preserveaspectratiobooleanPreserve aspect ratio of the anchored shape
editor-handles-bbox-preservereadingorientationbooleanPreserve reading orientation for local transform
editor-handles-bbox-preserverightanglebooleanPreserve right angle for local transformation
editor-handles-bbox-rotationanglenumberRotation angle at anchor
editor-handles-bbox-sizeisindevicespacebooleanIs coordinate in device space
editor-handles-bbox-useminmaxdimensionsbooleanUse the min max dimensions to limit visual size
editor-handles-bbox-widthnumberShape width
editor-handles-bboxOptionsBbox resize handles properties (see
editor-handles-bbox-alignmentAnchorTypeAnchor type of symbol
editor-handles-bbox-cachebooleanSet it to true if you want to cache complex geometry to raster
editor-handles-bbox-painterstringA function with has parameters: symbol, box, context
editor-handles-bbox-painterpropertiesanySymbol's painter's properties
editor-handles-rotationOptionsRotation handle properties (see
editor-handles-rotationOptionsRotation handle properties (see
editor-handles-rotationOptionsRotation handle properties (see
editor-handles-rotationOptionsRotation handle properties (see
editor-handles-rotationOptionsRotation handle properties (see
enabledbooleanEnabled state
layerCompositeNodeManipulator layer
mouseradiusnumberDevice radius for mouse events
namestringName of the tool used like cross-hair etc
touchradiusnumberDevice radius for touch events

Contents

Constructors

new AbstractEditingTool(options)

Protected new AbstractEditingTool(options?)

Parameters

Name Type
Optional optionsOptions

Overrides

AbstractTool.constructor

Methods

addListener

addListener(eventName, listener): AbstractEditingTool

add event listener. The listener receives the message when the system event happens.

Deprecated

since 4.0 use .on() instead. Note that 3 args callback should be used in subscription via .on(): (eventType, source, args)

Parameters

Name Type Description
eventNamestringevent name or unique event identifier
listenerFunctionthe event listener

Returns

AbstractEditingTool

Inherited from

AbstractTool.addListener


canRedo

canRedo(): boolean

Checks if there is command in history to redo

Returns

boolean


canUndo

canUndo(): boolean

Checks if there is command in history to undo

Returns

boolean


captureMouseUp

captureMouseUp(): void

listen to window mouse events in order to catch a mouse up action outside of the tool container DOM element. useful for example when you pan and release click outside of DOM element.

Returns

void

Inherited from

AbstractTool.captureMouseUp


createEditor

Protected createEditor(options): AbstractEditorBase<Node | Node[]>

Returns editor to edit node with provided options

Throws

if supported editor was not found and default editor was not set

Parameters

Name Type Description
optionsRecord<string, any>editor options

Returns

AbstractEditorBase<Node | Node[]>


dispose

dispose(): void

Dispose tool.

Returns

void

Inherited from

AbstractTool.dispose


editNode

editNode(node): AbstractEditingTool

Starts editing the node provided

Parameters

Name Type Description
nodeNode | Node[]node to edit

Returns

AbstractEditingTool

this


execute

execute(command): AbstractEditingTool

Applies the specified command to the associated node and appends it to history

Parameters

Name Type Description
commandAbstractCommandthe command to execute

Returns

AbstractEditingTool


fireEvent

fireEvent(eventName, eventArgs?): void

This method is Protected. Fire an Event.

Deprecated

since 4.0 use .notify() instead. Note that 3 args callback should be used in subscription via .on()

Parameters

Name Type Description
eventNamestringevent name
Optional eventArgsanycontains info of the event

Returns

void

Inherited from

AbstractTool.fireEvent


getActiveShape

getActiveShape(): Node

Returns currently edited shape. Relevant for EditMode.Ghost mode.

Returns

Node


getClassName

getClassName(): string

Returns

string

Inherited from

AbstractTool.getClassName


getEditMode

getEditMode(): EditMode

Returns tool current edit mode

Returns

EditMode


getEditor

getEditor(): AbstractEditorBase<Node | Node[]>

Returns current editor tool (if exists)

Returns

AbstractEditorBase<Node | Node[]>


getEventRadius

Protected getEventRadius(eventArgs): number

Returns device radius for the provided event

Parameters

Name Type Description
eventArgsEventArgscontains info of the event

Returns

number

Inherited from

AbstractTool.getEventRadius


getHistory

getHistory(): History

Returns current history

Returns

History


getManipulatorLayer

getManipulatorLayer(): CompositeNode<Node>

return manipulator layer

Returns

CompositeNode<Node>

layer

Inherited from

AbstractTool.getManipulatorLayer


getMouseRadius

getMouseRadius(): number

Returns current device radius for mouse events

Returns

number

Inherited from

AbstractTool.getMouseRadius


getName

getName(): string

return tool name if any

Returns

string

name of the tool

Inherited from

AbstractTool.getName


getParentTool

getParentTool(): AbstractCompositeTool

Gets parent tool

Returns

AbstractCompositeTool

parent tool

Inherited from

AbstractTool.getParentTool


getProperties

getProperties(): OptionsOut

Returns all properties

Returns

OptionsOut

tool options

Overrides

AbstractTool.getProperties


getProperty

getProperty(name): any

Gets dynamic property by name. These properties can be used as a property bags

Parameters

Name Type Description
namestringproperty name

Returns

any

Inherited from

AbstractTool.getProperty


getPropertyKeys

getPropertyKeys(): string[]

Returns known properties keys

Returns

string[]

Inherited from

AbstractTool.getPropertyKeys


getRegistry

Protected getRegistry(): Registry

Returns

Registry


getRoot

getRoot(): AbstractCompositeTool

Gets root tool

Returns

AbstractCompositeTool

parent tool

Inherited from

AbstractTool.getRoot


getShape

getShape(): Node | Node[]

Returns the origin of currently edited shape (if exists, null otherwise).

Returns

Node | Node[]


getTouchRadius

getTouchRadius(): number

Returns current device radius for touch events

Returns

number

Inherited from

AbstractTool.getTouchRadius


hasEventListener

hasEventListener(type, callback?): boolean

Check if a list of event listeners for this type contains this listener

Parameters

Name Type Description
typestringtype of event or property
Optional callbackFunctionto be called, if null, check if any callback is registered

Returns

boolean

Inherited from

AbstractTool.hasEventListener


isActive

isActive(): boolean

return active state

Returns

boolean

Inherited from

AbstractTool.isActive


isDisposed

isDisposed(): boolean

Returns whether this object has been disposed

Returns

boolean

Inherited from

AbstractTool.isDisposed


isDoubleClick

Protected isDoubleClick(point, eventArgs?): boolean

returns true if double clicked

Parameters

Name Type Description
pointPointClick point
Optional eventArgsEventArgsoptional event args to verify double click

Returns

boolean

Inherited from

AbstractTool.isDoubleClick


isEnabled

isEnabled(): boolean

returns enable state

Returns

boolean

state

Inherited from

AbstractTool.isEnabled


isSilent

isSilent(): boolean

Return true if the event dispatcher doesn't notify any events

Returns

boolean

Inherited from

AbstractTool.isSilent


isTouchEvent

isTouchEvent(eventArgs): boolean

return true if the event is a touch event and false otherwise.

Parameters

Name Type Description
eventArgsEvent | EventArgscontains info of the event

Returns

boolean

Inherited from

AbstractTool.isTouchEvent


notify

notify<E>(type, source, args?): AbstractEditingTool

Notify listeners

Type parameters

NameType
Eextends string

Parameters

Name Type Description
typeEevent types
sourceAbstractEditingToolof the event
Optional argsEventMap[E]arguments of the event

Returns

AbstractEditingTool

this

Overrides

AbstractTool.notify


off

off<E>(type?, callback?): AbstractEditingTool

Detach listener on event. Calling .off() with no arguments removes all attached listeners. Calling .off(type) with no callback removes all attached listeners for specific type.

Type parameters

NameType
Eextends string

Parameters

Name Type Description
Optional typeEtype of the event
Optional callback(eventType: E, sender: AbstractEditingTool, args: EventMap[E]) => voidfunction to be called

Returns

AbstractEditingTool

this

Overrides

AbstractTool.off


on

on<E>(type, callback): AbstractEditingTool

Attach listener on event that will be called whenever the specified event is delivered to the target

If the callback function is already in the list of event listeners for this target, the function is not added a second time.

If a particular anonymous function is in the list of event listeners registered for a certain target, and then later in the code, an identical anonymous function is given in an "on" call, the second function will also be added to the list of event listeners for that target.

TypeScript hint: in case of creating derived tool with own events, EventMap should be extended and .on() and .notify() methods redeclared, see sample.

Example

// Using in derived tool
import type {EventMap as EventMapBase} from '@int/geotoolkit/controls/tools/AbstractTool';
export type EventMap = EventMapBase &amp; {
[MyToolEvents.onValueChanged]: MyToolEventArgs
}
export enum MyToolEvents {
onValueChanged = 'onValueChanged'
}
export class MyTool extends AbstractTool {
public declare on: <E extends keyof EventMap>(type: E, callback: (eventType: E, sender: this, args: EventMap[E]) => void) => this;
protected declare notify: <E extends keyof EventMap>(type: E, source: AbstractTool, args?: EventMap[E]) => this;
public declare off: <E extends keyof EventMap>(type: E, callback?: (eventType: E, sender: this, args: EventMap[E]) => void) => this;
// ...
}

Type parameters

NameType
Eextends string

Parameters

Name Type Description
typeEtype of event or property
callback(eventType: E, sender: AbstractEditingTool, args: EventMap[E]) => voidto be called

Returns

AbstractEditingTool

Overrides

AbstractTool.on


onActiveStateChanged

Protected onActiveStateChanged(): void

Fires

Events.onStateChanged

Returns

void

Inherited from

AbstractTool.onActiveStateChanged


onBeforeCommandApplying

Protected onBeforeCommandApplying(eventName, history, command): void

Fires the EditEvents.BeforeCommandApplied event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command applied

Returns

void


onCommandApplied

Protected onCommandApplied(eventName, history, command): void

Fires the EditEvents.CommandApplied event and the event according to the command event name

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command applied

Returns

void


onCommandApplying

Protected onCommandApplying(eventName, history, command): void

Fires the EditEvents.CommandApplying event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command applied

Returns

void


onCommandRedo

Protected onCommandRedo(eventName, history, command): void

Fires the EditEvents.Redo event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command

Returns

void


onCommandUndo

Protected onCommandUndo(eventName, history, command): void

Fires the EditEvents.Undo event

Parameters

Name Type Description
eventNameEditEventsthe event name
historyHistorythe source history
commandAbstractCommandthe command

Returns

void


onEnabledStateChanged

Protected onEnabledStateChanged(): void

Fires

Events.onEnabledStateChanged

Returns

void

Inherited from

AbstractTool.onEnabledStateChanged


onKeyDown

Protected onKeyDown(eventArgs): void

Handles key down event

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void


onKeyUp

Protected onKeyUp(eventArgs): void

Handles key up event

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void


onMouseDown

Protected onMouseDown(eventArgs): void

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void


onMouseMove

Protected onMouseMove(eventArgs): void

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void


onMouseUp

Protected onMouseUp(eventArgs): void

Parameters

Name Type Description
eventArgsEventArgsevent args

Returns

void


onNodeCreated

Protected onNodeCreated(editor, eventArgs): void

Node created handler

Parameters

Name Type Description
editorAbstractEditorBase<Node | Node[]>editor that created node
eventArgsPaintEventArgsevent args

Returns

void


pageToCanvas

pageToCanvas(eventArgs, externalPlot?): Object

return position relative to the canvas

Parameters

Name Type Description
eventArgsEvent | EventArgsparentElement the parent HTML element
Optional externalPlotPlotplot

Returns

Object

NameType
xnumber
ynumber

Inherited from

AbstractTool.pageToCanvas


pointToModel

pointToModel(model, eventArgs): Point

converts device coordinates to inner coordinates of node

Parameters

Name Type Description
modelNodethe model
eventArgsPoint | EventArgsarguments of the event OR point in device (plot) coordinates.

Returns

Point

Inherited from

AbstractTool.pointToModel


redo

redo(): AbstractEditingTool

Reapplies last canceled command in history (if possible)

Returns

AbstractEditingTool


removeListener

removeListener(eventName, listener?): AbstractEditingTool

remove event listener. The listener reveives the message when the system event happens.

Deprecated

since 4.0 use .off() instead.

Parameters

Name Type Description
eventNamestringevent name
Optional listenerFunction | Function[]the event listener, if null, remove all listeners for the event

Returns

AbstractEditingTool

Inherited from

AbstractTool.removeListener


setActive

setActive(active): AbstractEditingTool

set active state

Fires

Events.onStateChanged

Parameters

Name Type Description
activebooleanset active state

Returns

AbstractEditingTool

Inherited from

AbstractTool.setActive


setEditMode

setEditMode(mode): AbstractEditingTool

Sets tool edit mode (for nodes with node manipulators)

Parameters

Name Type Description
modeEditModeedit mode

Returns

AbstractEditingTool

this


setEditor

Protected setEditor(editor): AbstractEditingTool

For internal use

Parameters

Name Type Description
editorAbstractEditorBase<Node | Node[]>editor to use

Returns

AbstractEditingTool

this


setEnabled

setEnabled(enabled): AbstractEditingTool

set enable state

Fires

Events.onEnabledStateChanged

Fires

Events.onStateChanged

Parameters

Name Type Description
enabledbooleansets the enabled state

Returns

AbstractEditingTool

this

Inherited from

AbstractTool.setEnabled


setMouseRadius

setMouseRadius(radius): AbstractEditingTool

Sets device radius for mouse events

Parameters

Name Type Description
radiusnumberradius for mouse events

Returns

AbstractEditingTool

this

Inherited from

AbstractTool.setMouseRadius


setName

setName(name): AbstractEditingTool

set tool name

Parameters

Name Type Description
namestringthe tool name

Returns

AbstractEditingTool

Inherited from

AbstractTool.setName


setProperties

setProperties(props?): AbstractEditingTool

Sets paint tool properties (mode, styles, etc.)

Parameters

Name Type Description
Optional propsOptionstool props

Returns

AbstractEditingTool

this

Overrides

AbstractTool.setProperties


setProperty

setProperty(name, value): AbstractEditingTool

Sets dynamic property by name

Parameters

Name Type Description
namestringproperty name
valueanyproperty value

Returns

AbstractEditingTool

this

Inherited from

AbstractTool.setProperty


setSilent

setSilent(bool): AbstractEditingTool

Set silent mode

Parameters

Name Type Description
boolbooleanflag to enable silent mode

Returns

AbstractEditingTool

this

Inherited from

AbstractTool.setSilent


setSlotEnabled

setSlotEnabled(eventName, value, target?): AbstractEditingTool

Sets slot enabled

Parameters

Name Type Description
eventNamestringeventName
valuebooleanvalue
Optional targetEventTargettarget

Returns

AbstractEditingTool

Inherited from

AbstractTool.setSlotEnabled


setSlots

setSlots(slots?, merge?): AbstractEditingTool

Sets new slots.

Example

const slots = {
'pointerdown': (event: EventArgs) => {
// event is an instance of @int/geotoolkit/controls/tools/EventArgs
...
}
};
tool.setSlots(slots);

Parameters

Name Type Description
Optional slotsRecord<string, Slot | Slot[] | (eventArgs: EventArgs) => void>type of system events
Optional mergebooleanset to true if you want to merge with existing slots

Returns

AbstractEditingTool

this

Inherited from

AbstractTool.setSlots


setTouchRadius

setTouchRadius(radius): AbstractEditingTool

Sets device radius for touch events

Parameters

Name Type Description
radiusnumberradius for touch events

Returns

AbstractEditingTool

this

Inherited from

AbstractTool.setTouchRadius


start

Protected start(eventArgs?): AbstractEditingTool

start

Parameters

Name Type Description
Optional eventArgsEventArgsevent args

Returns

AbstractEditingTool

Inherited from

AbstractTool.start


stop

Protected stop(): AbstractEditingTool

stop

Returns

AbstractEditingTool

Inherited from

AbstractTool.stop


toggle

toggle(): AbstractEditingTool

switch enable state to opposite state

Returns

AbstractEditingTool

Inherited from

AbstractTool.toggle


undo

undo(): AbstractEditingTool

Cancels last command in history (if possible)

Returns

AbstractEditingTool


update

update(): AbstractEditingTool

Forces editing shapes and handles to be updated

Returns

AbstractEditingTool

this


updateHandles

updateHandles(): AbstractEditingTool

Forces editing handles to be synchronized with shape

Returns

AbstractEditingTool

this


canvasToClient

Static canvasToClient(plotPoint, plot): Point

Convert plot coordinates to global coordinates

Parameters

Name Type Description
plotPointPointpoint in plot coordinates
plotPlotplot with canvas

Returns

Point

Inherited from

AbstractTool.canvasToClient


clientToCanvas

Static clientToCanvas(nativeEvent, plot): Point

Convert global coordinates to plot coordinates

Parameters

Name Type Description
nativeEventEventnative browser event
plotPlotplot with canvas

Returns

Point

Inherited from

AbstractTool.clientToCanvas


getClassName

Static getClassName(): string

Returns

string

Inherited from

AbstractTool.getClassName


getExclusiveTool

Static getExclusiveTool(plot): AbstractTool

return exclusive tool associated with plot

Parameters

Name Type Description
plotPlotplot

Returns

AbstractTool

tool

Inherited from

AbstractTool.getExclusiveTool


getNativeEventName

Static getNativeEventName(eventName): string[]

Returns native event name

Parameters

Name Type Description
eventNamestringW3C Pointer Events Recommendation name

Returns

string[]

Inherited from

AbstractTool.getNativeEventName


isTouchEvent

Static isTouchEvent(eventArgs): eventArgs is TouchEvent

return true if the event is a touch event and false otherwise.

Parameters

Name Type Description
eventArgsEvent | EventArgscontains info of the event

Returns

eventArgs is TouchEvent

Inherited from

AbstractTool.isTouchEvent


lock

Static lock(plot, tool): void

Set exclusive tool for plot

Parameters

Name Type Description
plotPlotplot
toolAbstractTooltool

Returns

void

Inherited from

AbstractTool.lock


setDefaultMouseRadius

Static setDefaultMouseRadius(radius): void

Sets default device radius for mouse events

Parameters

Name Type Description
radiusnumberradius for mouse events

Returns

void

Inherited from

AbstractTool.setDefaultMouseRadius


setDefaultTouchRadius

Static setDefaultTouchRadius(radius): void

Sets default device radius for touch events

Parameters

Name Type Description
radiusnumberradius for touch events

Returns

void

Inherited from

AbstractTool.setDefaultTouchRadius


unlock

Static unlock(value): void

Remove exclusive tool from plot

Parameters

Name Type Description
valueAbstractTool | Plotvalue

Returns

void

Inherited from

AbstractTool.unlock