Readonly
commandsThe command registry used by the menu.
Readonly
nodeGet the DOM node owned by the widget.
Readonly
rendererThe renderer used by the menu.
A signal emitted just before the menu is closed.
This signal is emitted when the menu receives a 'close-request'
message, just before it removes itself from the DOM.
This signal is not emitted if the menu is already detached from
the DOM when it receives the 'close-request'
message.
The dataset for the widget's DOM node.
A signal emitted when the widget is disposed.
Get the method for hiding the widget.
Get the id of the widget's DOM node.
Set the id of the widget's DOM node.
Test whether the widget's node is attached to the DOM.
Test whether the widget has been disposed.
Test whether the widget is explicitly hidden.
The leaf menu of the menu hierarchy.
A signal emitted when a new menu is requested by the user.
This signal is emitted whenever the user presses the right or left arrow keys, and a submenu cannot be opened or closed in response.
This signal is useful when implementing menu bars in order to open the next or previous menu in response to a user key press.
This signal is only emitted for the root menu in a hierarchy.
Get the parent of the widget.
Set the parent of the widget.
Children are typically added to a widget by using a layout, which means user code will not normally set the parent widget directly.
The widget will be automatically removed from its old parent.
This is a no-op if there is no effective parent change.
The root menu of the menu hierarchy.
The title object for the widget.
The title object is used by some container widgets when displaying the widget alongside some title, such as a tab panel or side bar.
Since not all widgets will use the title, it is created on demand.
The owner
property of the title is set to this widget.
Add a menu item to the end of the menu.
The options for creating the menu item.
The menu item added to the menu.
Create an iterator over the widget's children.
A new iterator over the children of the widget.
The widget must have a populated layout in order to have children.
If a layout is not installed, the returned iterator will be empty.
Remove all menu items from the menu.
Test whether a widget is a descendant of this widget.
The descendant widget of interest.
true
if the widget is a descendant, false
otherwise.
Dispose of the resources held by the menu.
Test whether the widget's DOM node has the given class name.
The class name of interest.
true
if the node has the class, false
otherwise.
Hide the widget and make it hidden to its parent widget.
This causes the isHidden property to be true
.
If the widget is explicitly hidden, this is a no-op.
Insert a menu item into the menu at the specified index.
The index at which to insert the item.
The options for creating the menu item.
The menu item added to the menu.
The index will be clamped to the bounds of the items.
Protected
notifyProtected
onProtected
onProtected
onA message handler invoked on an 'after-detach'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on an 'after-hide'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on an 'after-show'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'before-attach'
message.
The default implementation of this handler is a no-op.
Protected
onProtected
onA message handler invoked on a 'before-hide'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'before-show'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'child-added'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'child-removed'
message.
The default implementation of this handler is a no-op.
Protected
onProtected
onA message handler invoked on a 'fit-request'
message.
The default implementation of this handler is a no-op.
Protected
onA message handler invoked on a 'resize'
message.
The default implementation of this handler is a no-op.
Protected
onOpen the menu at the specified location.
The client X coordinate of the menu location.
The client Y coordinate of the menu location.
Optional
options: IOpenOptionsThe additional options for opening the menu.
The menu will be opened at the given location unless it will not fully fit on the screen. If it will not fit, it will be adjusted to fit naturally on the screen.
The menu will be attached under the host
element in the DOM
(or document.body
if host
is null
) and before the ref
element (or as the last child of host
if ref
is null
).
The menu may be displayed outside of the host
element
following the rules of CSS absolute positioning.
This is a no-op if the menu is already attached to the DOM.
Show the widget and make it visible to its parent widget.
This causes the isHidden property to be false
.
If the widget is not explicitly hidden, this is a no-op.
Test whether the given widget flag is set.
This will not typically be called directly by user code.
Toggle a class name on the widget's DOM node.
The class name to toggle on the node.
Optional
force: booleanWhether to force add the class (true
) or force
remove the class (false
). If not provided, the presence of
the class will be toggled from its current state.
true
if the class is now present, false
otherwise.
The class name must not contain whitespace.
Static
saveSave window data used for menu positioning in transient cache.
In order to avoid layout trashing it is recommended to invoke this method immediately prior to opening the menu and any DOM modifications (like closing previously visible menu, or adding a class to menu widget).
The transient cache will be released upon open()
call.
A widget which displays items as a canonical menu.