Last updated

API / geotoolkit / welllog / widgets / tools / Splitter / Splitter

Class: Splitter

tools.Splitter.Splitter

Creates default implementation of the track splitter
The tool fires the following types of event:
(1) Events.onCanResize - RejectableEventArgs - occurs before track resize is starting.
(2) Events.onTrackWidthChanged - SplitterEventArgs - occurs after track resize is done.
(3) Events.onContainerWidthChanged - SplitterEventArgs - occurs after container resize is done.



Events
<td> occurs after track resize is done.
EventArgumentsDescription
Splitter.Events.onCanResizeRejectableEventArgsoccurs before track resize is starting.
Splitter.Events.onTrackWidthChangedRejectableEventArgs
Splitter.Events.onContainerWidthChangedEventArgsoccurs after container resize is done.

Tool name: 'splitter'

Hierarchy

Table of contents

Constructors
Methods
Css Properties
Name Type Description
enabledbooleanEnabled state
layerCompositeNodeManipulator layer
layer-clippingbooleanEnable clipping, this does not consider the clipstyle, it is related to bounds-clipping
layer-clipstyleClipStyleClipping style
layer-clipstyle-evenoddbooleanTrue if evenodd mode is on (&#x27;nonzero&#x27; mode otherwise)
layer-clipstyle-geometryGraphicsPathClipping geometry
layer-clipstyle-geometry-boundsRectBounds
layer-clipstyle-geometry-bounds-heightnumberHeight
layer-clipstyle-geometry-bounds-readonlybooleanReadonly
layer-clipstyle-geometry-bounds-widthnumberWidth
layer-clipstyle-geometry-bounds-xnumberLeft
layer-clipstyle-geometry-bounds-ynumberTop
layer-clipstyleGraphicsPathClipping style
layer-cssclassstringThe css class name of this node
layer-csscursorstringCSS cursor associated with node
layer-cssstylestringCSS style to be applied to inserted elements
layer-idstring | numberId of the node, its a unique identifier
layer-infinitybooleanMode to render outside the model limits
layer-localtransformTransformationLocal transformation
layer-localtransform-dxnumberX axis translation
layer-localtransform-dynumberY axis translation
layer-localtransform-xxnumberX scale
layer-localtransform-xynumberXy skew
layer-localtransform-yxnumberYx skew
layer-localtransform-yynumberY scale
layer-marginsnumber | stringIt has properties for specifying the margins for each side
layer-namestringName of the node. It is often used for debugging purposes or to simplify queries
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
layer-opacityblendmodeBlendModeNode opacity mode to blend it
layer-scalescrollstrategyScaleScrollStrategyScale scroll strategy
layer-scalescrollstrategy-enabledbooleanEnable flag
layer-selectablebooleanSelectable node, a boolean to determine if selection should consider this node
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
layer-transformstringAdditional CSS transformation applied to node or &#x27;none&#x27;
layer-transformTransformationAdditional CSS transformation applied to node or &#x27;none&#x27;
layer-visiblebooleanVisibility of the node, a boolean to determine if the node should be rendered or not
layer-z-indexnumberDefine node z-index
maximumwidthnumberMaximum splitter width
minimumwidthnumberMinimum splitter width
mouseradiusnumberDevice radius for mouse events
namestringName of the tool used like cross-hair etc
touchradiusnumberDevice radius for touch events
trackcontainerLogTrackContainerOptional trackContainer
trackcontainer-automodellimitsmodebooleanAuto model limits mode
trackcontainer-boundsRectDefine position of the group in the parent
trackcontainer-clippingbooleanEnable clipping, this does not consider the clipstyle, it is related to bounds-clipping
trackcontainer-clipstyleClipStyleClipping style
trackcontainer-clipstyleGraphicsPathClipping style
trackcontainer-contentorientationOrientationContent orientation
trackcontainer-cssclassstringThe css class name of this node
trackcontainer-csscursorstringCSS cursor associated with node
trackcontainer-cssstylestringCSS style to be applied to inserted elements
trackcontainer-deviceunitstringUnit of the device
trackcontainer-fillstylestringFill style
trackcontainer-fillstyleFillStyleFill style
trackcontainer-fillstyle-colorstringColor in CSS form
trackcontainer-fillstyle-evenoddmodebooleanEven-odd fill mode
trackcontainer-fillstyle-fillpatternPatternPattern
trackcontainer-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
trackcontainer-fillstyle-fillpattern-patternnamestringName of this pattern for indexing
trackcontainer-fillstyle-fillpattern-scalablebooleanFlag that sets scalability of the pattern coordinates, or relative to the shape it is filling (It is not supported)
trackcontainer-fillstyle-foregroundstringForeground color
trackcontainer-fillstyle-patternPatternPattern
trackcontainer-horizontalflipbooleanHorizontal axis goes from right to left
trackcontainer-idstring | numberId of the node, its a unique identifier
trackcontainer-indentnumberIndent indent between tracks
trackcontainer-indexunitstringA scale unit or string symbol
trackcontainer-infinitybooleanMode to render outside the model limits
trackcontainer-layoutstyleLayoutStyleLayout style to be used for parent layout
trackcontainer-layoutstyle-constraintSizeConstraintLayout constrains
trackcontainer-layoutstyle-flexgrownumberNumber specifying how much the item will grow relative to the rest of the items inside the same container
trackcontainer-layoutstyle-flexshrinknumberNumber specifying how much the item will shrink relative to the rest of the items inside the same container
trackcontainer-layoutstyle-floatstringFloat position
trackcontainer-layoutstyle-positionstringLayout position
trackcontainer-layoutstyle-sizenumber | stringLayout size
trackcontainer-linestylestringLine style
trackcontainer-linestyleLineStyleLine style
trackcontainer-linestyle-colorstringColor in CSS form
trackcontainer-linestyle-fillstringOptional fill style to be used to fill lines generated with this style
trackcontainer-linestyle-fillFillStyleOptional fill style to be used to fill lines generated with this style
trackcontainer-linestyle-linecapCapStyleThe line cap style
trackcontainer-linestyle-linedashoffsetnumberLine dash offset of dashed line
trackcontainer-linestyle-linejoinJoinStyleThe line join style
trackcontainer-linestyle-pixelsnapmodebooleanPixel Snap Mode, default(
trackcontainer-linestyle-scalablebooleanTrue if width should depend on transformation
trackcontainer-linestyle-unitstringOptional unit for the width
trackcontainer-linestyle-widthnumber | stringThe line thickness
trackcontainer-localtransformTransformationLocal transformation
trackcontainer-marginsnumber | stringIt has properties for specifying the margins for each side
trackcontainer-modellimitsRectDefine inner model coordinates of the group
trackcontainer-namestringName of the node. It is often used for debugging purposes or to simplify queries
trackcontainer-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
trackcontainer-opacityblendmodeBlendModeNode opacity mode to blend it
trackcontainer-paddingnumber | stringIt has properties for specifying the padding for each side
trackcontainer-pickingchildrenbooleanEnable picking children
trackcontainer-scalescrollstrategyScaleScrollStrategyScale scroll strategy
trackcontainer-scaleunitstringA scale unit or string symbol
trackcontainer-selectablebooleanSelectable node, a boolean to determine if selection should consider this node
trackcontainer-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
trackcontainer-transformstringAdditional CSS transformation applied to node or &#x27;none&#x27;
trackcontainer-transformTransformationAdditional CSS transformation applied to node or &#x27;none&#x27;
trackcontainer-verticalflipbooleanVertical axis goes from bottom to top
trackcontainer-viewcachebooleanView cache to cache child nodes
trackcontainer-visiblebooleanVisibility of the node, a boolean to determine if the node should be rendered or not
trackcontainer-z-indexnumberDefine node z-index

Contents

Constructors

new Splitter(options, trackContainer)

new Splitter(options?, trackContainer?)

Parameters

Name Type Description
Optional optionsLayer<Node> | Optionslayer for holding temporary shapes or properties object
Optional trackContainerLogTrackContaineroptional trackContainer

Overrides

AbstractTool.constructor

Methods

addListener

addListener(eventName, listener): Splitter

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

Splitter

Inherited from

AbstractTool.addListener


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


dispose

dispose(): void

Dispose tool.

Returns

void

Inherited from

AbstractTool.dispose


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


getClassName

getClassName(): string

Returns

string

Inherited from

AbstractTool.getClassName


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


getManipulatorLayer

getManipulatorLayer(): CompositeNode<Node>

return manipulator layer

Returns

CompositeNode<Node>

layer

Inherited from

AbstractTool.getManipulatorLayer


getMaximumWidth

getMaximumWidth(): number

Return maximum width

Returns

number


getMinimumWidth

getMinimumWidth(): number

Return minimum width

Returns

number


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

Gets tool options

Returns

OptionsOut

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


getRoot

getRoot(): AbstractCompositeTool

Gets root tool

Returns

AbstractCompositeTool

parent tool

Inherited from

AbstractTool.getRoot


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?): Splitter

Notify listeners

Type parameters

NameType
Eextends string

Parameters

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

Returns

Splitter

this

Overrides

AbstractTool.notify


off

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

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: Splitter, args: EventMap[E]) => voidfunction to be called

Returns

Splitter

this

Overrides

AbstractTool.off


on

on<E>(type, callback): Splitter

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: Splitter, args: EventMap[E]) => voidto be called

Returns

Splitter

Overrides

AbstractTool.on


onActiveStateChanged

Protected onActiveStateChanged(): void

Fires

Events.onStateChanged

Returns

void

Inherited from

AbstractTool.onActiveStateChanged


onEnabledStateChanged

Protected onEnabledStateChanged(): void

Fires

Events.onEnabledStateChanged

Returns

void

Inherited from

AbstractTool.onEnabledStateChanged


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


removeListener

removeListener(eventName, listener?): Splitter

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

Splitter

Inherited from

AbstractTool.removeListener


setActive

setActive(active): Splitter

set active state

Fires

Events.onStateChanged

Parameters

Name Type Description
activebooleanset active state

Returns

Splitter

Inherited from

AbstractTool.setActive


setEnabled

setEnabled(enabled): Splitter

set enable state

Fires

Events.onEnabledStateChanged

Fires

Events.onStateChanged

Parameters

Name Type Description
enabledbooleansets the enabled state

Returns

Splitter

this

Inherited from

AbstractTool.setEnabled


setMaximumWidth

setMaximumWidth(width?): Splitter

Set maximum splitter width

Parameters

Name Type Description
Optional widthnumbermaximum splitter width

Returns

Splitter


setMinimumWidth

setMinimumWidth(width): Splitter

Set minimum splitter width

Parameters

Name Type Description
widthnumberminimum splitter width

Returns

Splitter


setMouseRadius

setMouseRadius(radius): Splitter

Sets device radius for mouse events

Parameters

Name Type Description
radiusnumberradius for mouse events

Returns

Splitter

this

Inherited from

AbstractTool.setMouseRadius


setName

setName(name): Splitter

set tool name

Parameters

Name Type Description
namestringthe tool name

Returns

Splitter

Inherited from

AbstractTool.setName


setProperties

setProperties(properties?): Splitter

Sets tool properties

Parameters

Name Type Description
Optional propertiesOptionsproperties

Returns

Splitter

Overrides

AbstractTool.setProperties


setProperty

setProperty(name, value): Splitter

Sets dynamic property by name

Parameters

Name Type Description
namestringproperty name
valueanyproperty value

Returns

Splitter

this

Inherited from

AbstractTool.setProperty


setSilent

setSilent(bool): Splitter

Set silent mode

Parameters

Name Type Description
boolbooleanflag to enable silent mode

Returns

Splitter

this

Inherited from

AbstractTool.setSilent


setSlotEnabled

setSlotEnabled(eventName, value, target?): Splitter

Sets slot enabled

Parameters

Name Type Description
eventNamestringeventName
valuebooleanvalue
Optional targetEventTargettarget

Returns

Splitter

Inherited from

AbstractTool.setSlotEnabled


setSlots

setSlots(slots?, merge?): Splitter

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

Splitter

this

Inherited from

AbstractTool.setSlots


setTouchRadius

setTouchRadius(radius): Splitter

Sets device radius for touch events

Parameters

Name Type Description
radiusnumberradius for touch events

Returns

Splitter

this

Inherited from

AbstractTool.setTouchRadius


start

Protected start(eventArgs?): Splitter

start

Parameters

Name Type Description
Optional eventArgsProxyEventArgsevent args

Returns

Splitter

Overrides

AbstractTool.start


stop

Protected stop(): Splitter

stop

Returns

Splitter

Inherited from

AbstractTool.stop


toggle

toggle(): Splitter

switch enable state to opposite state

Returns

Splitter

Inherited from

AbstractTool.toggle


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