BeardLib
Search…
⌃K

Menus

Updated for version 3.36.
All values and functions are inherited from here: https://luffyyy.gitbook.io/beardlib/menuui/menuui-item

Holder

The most simple type of menu. Only holds items. If you don't need a scroll-able panel you should use this menu type instead of Menu.

Creation

MyRandomMenu:Holder({
name = "Holdon"
})

Parameters

Parameter
Type
Description
auto_height
Boolean
Should the menu automatically set the height based on items it has? Defaults to true
A Menu is a menu type with a scroll-able panel for the items.

Creation

MyRandomMenu:Menu({
name = "Menu"
})

Parameters

Parameter
Type
Description
scrollbar
Boolean
Should there by a scrollbar for the menu? You should set this to false if you are sure the menu will never have too many items to require a scrollbar. Defaults to true if the menu has auto_height set to false or min_height not set to null or max_height not set to null (Recommended to use Holder instead in that case)
scroll_width
Number
Set a custom size for the scrollbar. Defaults to 8
auto_height
Boolean
Should the menu automatically set the height based on items it has? Defaults to true if menu is a group

Functions

Get

Function
Return Type
Description
ScrollY()
Number
Returns the current scroll Y position. Useful if you want to retain the position of the scroll

Set

Function
Description
SetScrollSpeed(Number speed)
Sets the scrolling speed
SetSize(Number w, Number h)
Sets the size for the menu. w is the width and h is the height w and h can be null and will default to the current size if not defined
SetScrollY(Number y)
Sets the Y position of the scroll

Group/DivGroup

Inherits Menu
Features a title and a scroll-able panel for items. Additionally allows you to close and open the menu.

Creation

MyRandomMenu:Group({
name = "2ndMenu",
text = "A group!"
})
or if a DivGroup:
MyRandomMenu:DivGroup({
name = "3rdMenu",
text = "Div group!"
})

DivGroup

The difference between Group and DivGroup is that div group sets divider_type to true which makes the item like a divider but it has items, this also disables toggling for the group.

Parameters

Parameter
Type
Description
closed
Boolean
is the group closed?

Functions

Function
Description
ToggleGroup()
Toggles the group, if it's closed then it will open it and if not it will close it
CloseGroup()
Closes the group
OpenGroup()
Opens the group

PopupMenu

A menu that is like a simple button. But, opens up a popup menu when pressed. Kind of like those context menus in every Windows app.

Creation

MyRandomMenu:PopupMenu({
name = "ooo",
text = "File"
})

Parameters

Parameter
Type
Description
keep_menu_open
Boolean
Decides whether the popup menu should stay open after pressing outside of it. Defaults to false

Functions

Function
Description
Open()
Opens the menu
Close()
Closes the menu

NoteBook

Inherits Menu A menu that is like a notebook; it has pages. You can control the page using the arrow keys at the top right corner of the menu.

Creation

local nb = MyRandomMenu:NoteBook({
name = "NoteBook",
text = "My book..."
})
local item = nb:Button({
text = "Dummy button"
})
--Create a page and inserts the item into it.
nb:AddItemPage(item)
This is a little weird type of item, it has items; but only renders them based on pages. So be careful with it.

Parameters

Parameter
Type
Description
page
Number
The current page. Defaults to 1

Functions

Get

Function
Return Type
Description
GetCurrentPage()
Number
Returns the current page
GetPageCount()
Number
Returns the page count
GetItemPage(Item item)
Table
Returns the page of an item; if it's inside any

Set

Function
Description
SetPage(Number page)
Sets the current page

Other

Function
Description
AddToPage(Item item, Number page)
Adds an item to a page
RemoveFromPage(Item item, Number page)
Removes an item from a page
AddPage(String name, Number indx)
Adds a page. name is the name of the page. It will also be displayed near the arrow page controls. indx is used to insert it to a specific index. By default it inserts it to the last position
AddItemPage(String name, Item item, Number indx)
Adds a page by the name of name and adds item to it. indx is same as in AddPage
SetPageName(Number indx, String name)
Sets a page name/title. indx is the page number and name is the title
RemovePage(Number indx)
Removes a page that has the index indx
RemoveAllPages()
Removes all pages
RemovePageWithItem(Item item)
Removes a page that has a certain item
Last modified 8mo ago