Last updated

API / geotoolkit / controls / tools / ToolTipTool / ToolTipTool

Class: ToolTipTool

tools.ToolTipTool.ToolTipTool

Provides HTML based tooltip tool to display content information

Hierarchy

Table of contents

Constructors
Methods
Css Properties
Name Type Description
alignmentAnchorTypeTooltip alignment according to the point set by offsets
autoflipbooleanTrue to automatically flip tooltip alignment if it doesn't fit the window
autoupdatebooleanTrue if tooltip info should be auto updated after layer.invalidate() was called
cssclassesstringCSS classes' names to be applied for tooltip 'cg-tooltip' by default
delaynumber
delaynumber
enabledbooleanEnabled state
fadedurationnumberDelay during show/hiding tooltip, 0 means false and tooltip shows or hide instantly
hidedelaynumberAuto hide in millisecond, 0 means false and autohide is disabled
hidedelaynumberTooltip auto-hide delay, 0 means false and auto hide is disabled
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 ('nonzero' 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 'none'
layer-transformTransformationAdditional CSS transformation applied to node or 'none'
layer-visiblebooleanVisibility of the node, a boolean to determine if the node should be rendered or not
layer-z-indexnumberDefine node z-index
modePointerModeTooltip appearance mode
mouseradiusnumberDevice radius for mouse events
namestringName of the tool used like cross-hair etc
offsetxnumberOffset of tooltip from current position by x in pixels
offsetynumberOffset of tooltip from current position by y in pixels
orientationOrientationTooltip orientation
radiusnumberRadius of selection
showdelaynumberDelay between displaying tooltip, 0 means false and tooltip shows immediately
showdelaynumberDelay between displaying tooltip, 0 means false and tooltip shows immediately
sizeRangeClient size range
size-highnumberUpper range boundary
size-lownumberLower range boundary
size-maxnumber
size-minnumber
touchradiusnumberDevice radius for touch events
transparentbooleanMouse transparent mode

Contents

Constructors

new ToolTipTool(options)

new ToolTipTool(options?)

ToolTipTool constructor

Parameters

Name Type Description
Optional optionsOptionstool options

Overrides

AbstractTool.constructor

Methods

addListener

addListener(eventName, listener): ToolTipTool

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

ToolTipTool

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 ToolTipTool

Returns

void

Overrides

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


getAlignment

getAlignment(): AnchorType

Returns

AnchorType


getAnchorCssClasses

getAnchorCssClasses(): Partial<Record<AnchorCssKeys, string>>

Return CSS class map for tooltip anchors

Returns

Partial<Record<AnchorCssKeys, string>>

CSS classes


getCallback

getCallback(): Callback

Gets callback

Returns

Callback

callback callback to return information about the current position


getClassName

getClassName(): string

Returns

string

Inherited from

AbstractTool.getClassName


getCssClasses

getCssClasses(): string

Return CSS classes for tooltip

Returns

string

CSS classes


getDivElement

getDivElement(): HTMLElement | CreateHTMLElement

Gets tooltip div element or callback for creates div element

Returns

HTMLElement | CreateHTMLElement

divElement HTML div container element or callback which creating div


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


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


getOffsetX

getOffsetX(): number

Returns

number


getOffsetY

getOffsetY(): number

Returns

number


getOrientation

getOrientation(): Orientation

Returns

Orientation


getParentTool

getParentTool(): AbstractCompositeTool

Gets parent tool

Returns

AbstractCompositeTool

parent tool

Inherited from

AbstractTool.getParentTool


getPointerMode

getPointerMode(): string

Returns

string


getProperties

getProperties(context?): OptionsOut

Gets all the properties pertaining to this object

Parameters

Name Type
Optional contextISerializationContext

Returns

OptionsOut

properties object

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


getRadius

getRadius(): number

Returns radius of selection

Returns

number

radius of selection


getRegistry

getRegistry(): ToolTipRegistry

Gets tooltip registry instance

Returns

ToolTipRegistry

tooltip registry


getRoot

getRoot(): AbstractCompositeTool

Gets root tool

Returns

AbstractCompositeTool

parent tool

Inherited from

AbstractTool.getRoot


getTooltipPositionHandler

getTooltipPositionHandler(): PositionCallback

Gets tooltip position handler, this handler will be called every time mouse position changed

Returns

PositionCallback

PositionCallback


getTooltipSizeHandler

getTooltipSizeHandler(): SizeCallback

Gets tooltip size handler, this handler will be called every time mouse position changed

Returns

SizeCallback

SizeCallback


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


hide

hide(): void

hide tooltips if any

Returns

void


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

Notify listeners

Type parameters

NameType
Eextends string

Parameters

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

Returns

ToolTipTool

this

Inherited from

AbstractTool.notify


off

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

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

Returns

ToolTipTool

this

Inherited from

AbstractTool.off


on

on<E>(type, callback): ToolTipTool

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

Returns

ToolTipTool

Inherited from

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

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

ToolTipTool

Inherited from

AbstractTool.removeListener


setActive

setActive(active): ToolTipTool

set active state

Fires

Events.onStateChanged

Parameters

Name Type Description
activebooleanset active state

Returns

ToolTipTool

Inherited from

AbstractTool.setActive


setAlignment

setAlignment(alignment): ToolTipTool

Parameters

Name Type
alignmentAnchorType

Returns

ToolTipTool


setAnchorCssClasses

setAnchorCssClasses(cssAnchorClasses): ToolTipTool

Sets CSS class map for tooltip anchors (to render arrows). By default this map contains css-classnames for the following anchors: 'topcenter': 'cg-tooltip-arrow-top', 'bottomcenter': 'cg-tooltip-arrow-bottom', 'leftcenter': 'cg-tooltip-arrow-left', 'rightcenter': 'cg-tooltip-arrow-right' You can set it to null is to remove default css classes and use rectangular tooltip instead of callout.

Parameters

Name Type Description
cssAnchorClassesPartial<Record<AnchorCssKeys, string>>CSS classes

Returns

ToolTipTool

this


setCallback

setCallback(callback): ToolTipTool

Set callback to return information about the current position

Parameters

Name Type Description
callbackCallbackcallback

Returns

ToolTipTool


setCssClasses

setCssClasses(cssClasses): ToolTipTool

Sets CSS classes to be applied for tooltip

Parameters

Name Type Description
cssClassesstringCSS classes

Returns

ToolTipTool

this


setDivElement

setDivElement(divElement): ToolTipTool

Sets tooltip div element or callback for creates div element

Parameters

Name Type Description
divElementHTMLElement | CreateHTMLElementHTML div container element or callback which creating div

Returns

ToolTipTool

this


setEnabled

setEnabled(enabled): ToolTipTool

set enable state

Fires

Events.onEnabledStateChanged

Fires

Events.onStateChanged

Parameters

Name Type Description
enabledbooleansets the enabled state

Returns

ToolTipTool

this

Inherited from

AbstractTool.setEnabled


setMouseRadius

setMouseRadius(radius): ToolTipTool

Sets device radius for mouse events

Parameters

Name Type Description
radiusnumberradius for mouse events

Returns

ToolTipTool

this

Inherited from

AbstractTool.setMouseRadius


setName

setName(name): ToolTipTool

set tool name

Parameters

Name Type Description
namestringthe tool name

Returns

ToolTipTool

Inherited from

AbstractTool.setName


setOffsetX

setOffsetX(offsetX): ToolTipTool

Sets tooltip offset x

Parameters

Name Type Description
offsetXnumberoffset x

Returns

ToolTipTool

this


setOffsetY

setOffsetY(offsetY): ToolTipTool

Sets tooltip offset y

Parameters

Name Type Description
offsetYnumberoffset y

Returns

ToolTipTool

this


setOptions

setOptions(options?): ToolTipTool

Sets tooltip options

Parameters

Name Type Description
Optional optionsOptionsoptions

Returns

ToolTipTool

this


setOrientation

setOrientation(orientation): ToolTipTool

Parameters

Name Type
orientationOrientation

Returns

ToolTipTool


setPointerMode

setPointerMode(mode): ToolTipTool

Parameters

Name Type
modestring

Returns

ToolTipTool


setProperties

setProperties(properties?, context?): ToolTipTool

Sets all the properties pertaining to this object

Parameters

Name Type Description
Optional propertiesOptionsAn object containing the properties to set
Optional contextIDeserializationContextdeserialization context

Returns

ToolTipTool

this

Overrides

AbstractTool.setProperties


setProperty

setProperty(name, value): ToolTipTool

Sets dynamic property by name

Parameters

Name Type Description
namestringproperty name
valueanyproperty value

Returns

ToolTipTool

this

Inherited from

AbstractTool.setProperty


setRadius

setRadius(radius): ToolTipTool

Set radius of selection

Parameters

Name Type Description
radiusnumberradius of selection

Returns

ToolTipTool

this


setRegistry

setRegistry(registry): ToolTipTool

Set tooltip registry instance

Parameters

Name Type
registryToolTipRegistry

Returns

ToolTipTool


setSilent

setSilent(bool): ToolTipTool

Set silent mode

Parameters

Name Type Description
boolbooleanflag to enable silent mode

Returns

ToolTipTool

this

Inherited from

AbstractTool.setSilent


setSlotEnabled

setSlotEnabled(eventName, value, target?): ToolTipTool

Sets slot enabled

Parameters

Name Type Description
eventNamestringeventName
valuebooleanvalue
Optional targetEventTargettarget

Returns

ToolTipTool

Inherited from

AbstractTool.setSlotEnabled


setSlots

setSlots(slots?, merge?): ToolTipTool

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

ToolTipTool

this

Inherited from

AbstractTool.setSlots


setTooltipPositionHandler

setTooltipPositionHandler(handler?): ToolTipTool

Set tooltip position handler, this handler will be called every time mouse position changed

Parameters

Name Type Description
Optional handlerPositionCallbackHandler to be called

Returns

ToolTipTool

this


setTooltipSizeHandler

setTooltipSizeHandler(handler?): ToolTipTool

Set tooltip size handler, this handler will be called every time mouse position changed

Parameters

Name Type Description
Optional handlerSizeCallbackHandler to be called

Returns

ToolTipTool

this


setTouchRadius

setTouchRadius(radius): ToolTipTool

Sets device radius for touch events

Parameters

Name Type Description
radiusnumberradius for touch events

Returns

ToolTipTool

this

Inherited from

AbstractTool.setTouchRadius


show

show(point, options?): ToolTipTool

Show tooltip at specified point (in node model coordinates, in case if node is specified)

Parameters

Name Type Description
pointPointplot point or node model point in case if node is specified
Optional optionsObjecttooltip options
Optional options.fadedurationnumber
Optional options.hidedelaynumber
Optional options.nodeNodenode tooltip owner
Optional options.plotPlotplot tooltip owner
Optional options.showdelaynumber

Returns

ToolTipTool


start

Protected start(eventArgs?): ToolTipTool

start

Parameters

Name Type Description
Optional eventArgsEventArgsevent args

Returns

ToolTipTool

Inherited from

AbstractTool.start


stop

Protected stop(): ToolTipTool

stop

Returns

ToolTipTool

Inherited from

AbstractTool.stop


toggle

toggle(): ToolTipTool

switch enable state to opposite state

Returns

ToolTipTool

Inherited from

AbstractTool.toggle


updateInfo

updateInfo(): ToolTipTool

Updates tooltip information using previous tooltip point

Returns

ToolTipTool

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