Menu
Keyboard navigation menu with specific event functions.
lib.registerMenu
Registers and caches a menu under the specified id.
data:
table
(object
)id:
string
title:
string
options:
table
(array
)label:
string
progress?:
number
colorScheme?:
string
icon?:
string
FontAwesome icon that will be displayed on the left side, works the same as notification and textui icons.
Also supports image urls, png and webp files but are not recommend to use over font awesome icons.
iconColor?:
string
values?:
table
(Array<string | {label: string; description: string}>
)If provided creates a side scrollable list.
When using object and setting description, the set description will be displayed in the menu tooltip.
checked?:
boolean
Setting either true or false will make the button a checkbox, if
values
is also provided the button will be a scrollable list.
description?:
string
Displays tooltip below menu on hovered item with provided description.
defaultIndex?:
number
Sets the current index for the list to specified number.
args?: {[key:
string
]:any
}Allows you to pass any arguments through the button.
If the button has
values
thenisScroll
is automatically passed.If the button has
checked
to either true or false thenisCheck
is automatically passed.
close?:
boolean
If set to false, it won't close the menu upon interacting with this option.
position?:
'top-left'
or'top-right'
or'bottom-left'
or'bottom-right'
Default:
'top-left'
disableInput?:
boolean
Default:
false
canClose:
boolean
If set to false the user won't be able to exit the menu without pressing one of the buttons.
onClose:
function
(keyPressed?:'Escape' | 'Backspace'
)Function that runs when the menu is exited via ESC/Backspace.
onSelected:
function
(selected:number
, secondary:number
|boolean
, args: {[key:string
]:any
})Function being ran when the selected button in the menu changes.
onSideScroll:
function
(selected:number
, scrollIndex:number
, args: {[key:string
]:any
})Function ran whenever a scroll list item is changed.
onCheck:
function
(selected:number
, checked:boolean
, args: {[key:string
]:any
})
cb:
function
(selected:number
, scrollIndex:number
, args: {[key:string
]:any
})Callback function when the menu item is pressed.
lib.showMenu
Displays the menu with the provided id.
id:
string
lib.hideMenu
onExit?:
boolean
If true runs the menu's
onClose
function.
lib.getOpenMenu
Returns the id of the currently open menu.
lib.setMenuOptions
id:
string
options:
table
(object
orarray
)index?:
number
If specified only sets the options table on the specified options index.
Example:
Replaces the 3rd index option of the specified menu
Usage Example
First we register the menu with our specified options then we call the show function in the command.
Last updated