3.8 KiB
3.8 KiB
@alias color number
VisualElement : BaseElement
Properties
| Property | Type | Default | Description |
|---|---|---|---|
| x | number | 1 | x position of the element |
| y | number | 1 | y position of the element |
| z | number | 1 | z position of the element |
| width | number | 1 | width of the element |
| height | number | 1 | height of the element |
| background | color | black | background color of the element |
| foreground | color | white | foreground color of the element |
| clicked | boole | an | false element is currently clicked |
| backgroundEnabled | boolean | true | whether the background is enabled |
| focused | boolean | false | whether the element is focused |
Functions
| Method | Returns | Description |
|---|---|---|
| VisualElement.new | VisualElement | |
| VisualElement:blur | - | |
| VisualElement:focus | - | |
| VisualElement:getAbsolutePosition | - | |
| VisualElement:getRelativePosition | number, | |
| VisualElement:init | - | |
| VisualElement:isInBounds | boolean | |
| VisualElement:mouse_click | boolean | |
| VisualElement:mouse_release | - | |
| VisualElement:mouse_up | - | |
| VisualElement:multiBlit | - | |
| VisualElement:render | - | |
| VisualElement:setCursor | - | |
| VisualElement:textFg | - |
VisualElement.new(props, basalt)
Creates a new VisualElement instance
Parameters
propstableThe properties to initialize the element withbasalttableThe basalt instance
Returns
VisualElementobjectThe newly created VisualElement instance
Usage
local element = VisualElement.new("myId", basalt)
VisualElement:blur()
VisualElement:focus()
VisualElement:getAbsolutePosition(x?, y?)
Returns the absolute position of the element or the given coordinates.
Parameters
x(optional)numberx positiony(optional)numbery position
VisualElement:getRelativePosition(x?, y?)
Returns the relative position of the element or the given coordinates.
Parameters
x(optional)numberx positiony(optional)numbery position
Returns
nilnilnil
VisualElement:init()
VisualElement:isInBounds(x, y)
Checks if the specified coordinates are within the bounds of the element
Parameters
xnumberThe x position to checkynumberThe y position to check
Returns
booleanisInBoundsWhether the coordinates are within the bounds of the element
VisualElement:mouse_click(button, x, y)
Handles a mouse click event
Parameters
buttonnumberThe button that was clickedxnumberThe x position of the clickynumberThe y position of the click
Returns
booleanclickedWhether the element was clicked
VisualElement:mouse_release()
VisualElement:mouse_up()
VisualElement:multiBlit(x, y, width, height, text, fg, bg)
Draws a text character/fg/bg at the specified position with a certain size, used in the rendering system
Parameters
xnumberThe x position to drawynumberThe y position to drawwidthnumberThe width of the elementheightnumberThe height of the elementtextstringThe text char to drawfgcolorThe foreground colorbgcolorThe background color
VisualElement:render()
Renders the element
Usage
element:render()
VisualElement:setCursor()
VisualElement:textFg(x, y, text, fg)
Draws a text character at the specified position, used in the rendering system
Parameters
xnumberThe x position to drawynumberThe y position to drawtextstringThe text char to drawfgcolorThe foreground color