Class BaseContextMenu

Base class used to create context menus

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 37

Constructor

new BaseContextMenu ( contextMenuEvent, parentNode )

The constructor

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 237

Parameters

Name Type Description
contextMenuEvent Event

The event that have triggered the menu

parentNode null or HTMLElement

The parent node of the menu. Can be null for leaflet objects

Public getters and setters

readonly get cancelButton : HTMLElement

The cancel button HTMLElement

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 324

readonly get clientX : Number

The X screen coordinate of the mouse event that have triggered the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 338

readonly get clientY : Number

The Y screen coordinate of the mouse event that have triggered the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 345

readonly get contextMenuHTMLElement : HTMLElement

The root HTMLElement of the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 317

readonly get haveParentNode : Boolean

A flag indicating when the menu must have a parent node. Menus triggered from leaflet objects don't have parentNode

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 367

readonly static get isActive : Boolean

A flag indicating if a menu is active

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 137

readonly get latLng : Array of Number

The lat an lng at the mouse position for events triggered by the map

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 352

readonly get menuItemHTMLElements : Array of HTMLElement

The HTMLElement of the menu items

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 331

readonly get menuItems : Array of MenuItem

The list of menu items to use. Must be implemented in the derived classes

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 310

readonly get targetObjId : Number

The ObjId of the TravelObject on witch the mouse is positionned if any

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 359

Public methods

onCancel ( )

OnCancel method used by the menu operator. Clean the variables and call the Promise Error handler

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 278

onOk ( selectedItemObjId )

OnOk method used by the menu operator. Clean the variables and call the Promise Ok handler

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 268

Parameters

Name Type Description
selectedItemObjId Number

The id of the item selected by the user

show ( )

Show the menu on the screen and perform the correct operation when an item is selected

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 288

Private properties

#cancelButton : HTMLElement

The cancel button HTMLElement

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 108

#clientX : Number

The X screen coordinate of the mouse event that have triggered the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 44

#clientY : Number

The Y screen coordinate of the mouse event that have triggered the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 51

#contextMenuHTMLElement : HTMLElement

The root HTMLElement of the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 101

static #currentMenu : BaseContextMenu

The active BaseContextMenu instance. Needed to close the menu when a second menu is loaded

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 80

#haveParentNode : Boolean

A flag indicating when the menu must have a parent node. Menus triggered from leaflet objects don't have parentNode

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 73

#latLng : Array of Number

The lat an lng at the mouse position for events triggered by the map

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 58

#menuItemHTMLElements : Array of HTMLElement

The HTMLElement of the menu items

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 115

#menuOperator : BaseContextMenuOperator

The associated BaseContextMenuOperator object

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 122

#onPromiseError : Function

The promise error handler

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 94

#onPromiseOk : Function

The promise ok handler

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 87

#targetObjId : Number

The ObjId of the TravelObject on witch the mouse is positionned if any

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 65

Private getters and setters

readonly static get #menuMargin : Number

The min margin between the screen borders and the menu in pixels

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 130

Private methods

#createCancelButton ( )

Create the cancel button and it's event listener to the menu

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 157

#createContextMenuHTMLElement ( )

Build the menu container and add event listeners

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 143

#createMenu ( onPromiseOk, onPromiseError )

Create and show the menu. This method is called by the Promise

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 220

Parameters

Name Type Description
onPromiseOk Function

The Promise Ok handler

onPromiseError Function

The Promise Error handler

#createMenuItemsHTMLElements ( )

Create the menuItems html elements

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 173

#moveContextMenu ( )

Move the container, so the top of the container is near the mouse

Source : file contextMenus/baseContextMenu/BaseContextMenu.js at line 198