6.0 KiB
6.0 KiB
Container : VisualElement
The container class. It is a visual element that can contain other elements. It is the base class for all containers, like Frames, BaseFrames, and more.
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 |
Combined Properties
| Name | Properties | Description |
|---|---|---|
| offset | offsetX offsetY |
Combined property for offsetX and offsetY |
Functions
| Method | Returns | Description |
|---|---|---|
| Container:addChild | Container | Adds a child to the container |
| Container:callChildrenEvent | boolean | Calls a event on all children |
| Container:clear | Container | Clears the container |
| Container:getChild | Container? | Removes a child from the container |
| Container:isChildVisible | boolean | Returns whether a child is visible |
| Container:registerChildEvent | Container | Registers the children events of the container |
| Container:registerChildrenEvents | Container | Registers the children events of the container |
| Container:removeChild | Container | Removes a child from the container |
| Container:removeChildrenEvents | Container | Unregisters the children events of the container |
| Container:sortChildren | Container | Sorts the children of the container |
| Container:sortChildrenEvents | Container | Sorts the children events of the container |
| Container:unregisterChildEvent | Container | Unregisters the children events of the container |
Protected Functions
| Method | Returns | Description |
|---|---|---|
| Container:blit | Container | Draws a line of text and fg and bg as colors |
| Container:char | boolean | Handles char events |
| Container:handleEvent | boolean | Default handler for events |
| Container:init | - | Initializes the Container instance |
| Container:key | boolean | Handles key events |
| Container:key_up | boolean | Handles key up events |
| Container:mouse_click | boolean | Handles mouse click events |
| Container:mouse_drag | boolean | Handles mouse drag events |
| Container:mouse_move | boolean | Handles mouse move events |
| Container:mouse_release | - | Handles mouse release events |
| Container:mouse_scroll | boolean | Handles mouse scroll events |
| Container:mouse_up | boolean | Handles mouse up events |
| Container:multiBlit | Container | Draws multiple lines of text, fg and bg strings |
| Container:render | - | Renders the container |
| Container:textBg | Container | Draws a line of text and bg as color |
| Container:textFg | Container | Draws a line of text and fg as color |
Container:addChild(child)
Adds a child to the container
Parameters
childtableThe child to add
Returns
ContainerselfThe container instance
Container:callChildrenEvent(visibleOnly, event...)
Calls a event on all children
Parameters
visibleOnlybooleanWhether to only call the event on visible childreneventstringThe event to call...(vararg)anyThe event arguments
Returns
booleanhandledWhether the event was handledtable?childThe child that handled the event
Container:clear()
Clears the container
Returns
ContainerselfThe container instance
Container:getChild(path)
Removes a child from the container
Parameters
pathstringThe path to the child to remove
Returns
Container?selfThe container instance
Container:isChildVisible(child)
Returns whether a child is visible
Parameters
childtableThe child to check
Returns
booleanbooleanthe child is visible
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:registerChildrenEvents(child)
Registers the children events of the container
Parameters
childtableThe child to register events for
Returns
ContainerselfThe container instance
Container:removeChild(child)
Removes a child from the container
Parameters
childtableThe child to remove
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: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: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