4.6 KiB
4.6 KiB
Container
The Container class serves as a fundamental building block for organizing UI elements. It acts as a parent element that can hold and manage child elements.
Extends: VisualElement
Properties
| Property | Type | Default | Description |
|---|---|---|---|
| children | table | {} | The children of the container |
| childrenSorted | boolean | true | Whether the children are sorted |
| childrenEventsSorted | boolean | true | Whether the children events are sorted |
| childrenEvents | table | {} | The children events of the container |
| eventListenerCount | table | {} | The event listener count of the container |
| focusedChild | table | nil | The focused child of the container |
| visibleChildren | table | {} | The visible children of the container |
| visibleChildrenEvents | table | {} | The visible children events of the container |
| offsetX | number | 0 | Horizontal content offset |
| offsetY | number | 0 | Vertical content offset |
Functions
| Method | Returns | Description |
|---|---|---|
| Container:isChildVisible | boolean | Returns whether a child is visible |
| Container:addChild | Container | Adds a child to the container |
| Container:clear | Container | Clears the container |
| Container:sortChildren | Container | Sorts the children of the container |
| Container:sortChildrenEvents | Container | Sorts the children events of the container |
| Container:registerChildrenEvents | Container | Registers the children events of the container |
| Container:registerChildEvent | Container | Registers the children events of the container |
| Container:removeChildrenEvents | Container | Unregisters the children events of the container |
| Container:unregisterChildEvent | Container | Unregisters the children events of the container |
| Container:removeChild | Container | Removes a child from the container |
| Container:getChild | self | Removes a child from the container |
| Container:callChildrenEvent | boolean, child | Calls a event on all children |
Container:isChildVisible(child)
Returns whether a child is visible
Parameters
childtableThe child to check
Returns
booleanbooleanthe child is visible
Container:addChild(child)
Adds a child to the container
Parameters
childtableThe child to add
Returns
ContainerselfThe container instance
Container:clear()
Clears the container
Returns
ContainerselfThe container instance
Container:sortChildren()
Sorts the children of the container
Returns
ContainerselfThe container instance
Container:sortChildrenEvents(eventName)
Sorts the children events of the container
Parameters
eventNamestringThe event name to sort
Returns
ContainerselfThe container instance
Container:registerChildrenEvents(child)
Registers the children events of the container
Parameters
childtableThe child to register events for
Returns
ContainerselfThe container instance
Container:registerChildEvent(child, eventName)
Registers the children events of the container
Parameters
childtableThe child to register events foreventNamestringThe event name to register
Returns
ContainerselfThe container instance
Container:removeChildrenEvents(child)
Unregisters the children events of the container
Parameters
childtableThe child to unregister events for
Returns
ContainerselfThe container instance
Container:unregisterChildEvent(child, eventName)
Unregisters the children events of the container
Parameters
childtableThe child to unregister events foreventNamestringThe event name to unregister
Returns
ContainerselfThe container instance
Container:removeChild(child)
Removes a child from the container
Parameters
childtableThe child to remove
Returns
ContainerselfThe container instance
Container:getChild(path)
Removes a child from the container
Parameters
pathstringThe path to the child to remove
Returns
selfThecontainer instance
Container:callChildrenEvent(visibleOnly, event)
Calls a event on all children
Parameters
visibleOnlybooleanWhether to only call the event on visible childreneventstringThe event to call
Returns
booleanhandledWhether the event was handledchildThechild that handled the event