57 lines
1.9 KiB
Markdown
57 lines
1.9 KiB
Markdown
# Input : VisualElement
|
|
This is the input class. It provides a text input field that can handle user input with various features like
|
|
cursor movement, text manipulation, placeholder text, and input validation.
|
|
|
|
## Properties
|
|
|
|
|Property|Type|Default|Description|
|
|
|---|---|---|---|
|
|
|text|string|-|The current text content of the input
|
|
|cursorPos|number|1|The current cursor position in the text
|
|
|viewOffset|number|0|The horizontal scroll offset for viewing long text
|
|
|maxLength|number?|nil|Maximum length of input text (optional)
|
|
|placeholder|string|...|Text to display when input is empty
|
|
|placeholderColor|color|gray|Color of the placeholder text
|
|
|focusedBackground|color|blue|Background color when input is focused
|
|
|focusedForeground|color|white|Foreground color when input is focused
|
|
|pattern|string?|nil|Regular expression pattern for input validation
|
|
|cursorColor|number|nil|Color of the cursor
|
|
|replaceChar|string|nil|Character to replace the input with (for password fields)
|
|
|
|
## Functions
|
|
|
|
|Method|Returns|Description|
|
|
|---|---|---|
|
|
|[Input:setCursor](#input-setcursor)|-|Sets the cursor position and color
|
|
|[Input:updateViewport](#input-updateviewport)|Input|Updates the input's viewport
|
|
|
|
|
|
## Protected Functions
|
|
|
|
|Method|Returns|Description|
|
|
|---|---|---|
|
|
|Input:blur|-|Handles a blur event
|
|
|Input:char|boolean|Handles char events
|
|
|Input:focus|-|Handles a focus event
|
|
|Input:init|Input|Initializes the Input instance
|
|
|Input:key|boolean|Handles key events
|
|
|Input:mouse_click|boolean|Handles mouse click events
|
|
|Input:render|-|Renders the input element
|
|
|
|
## Input:setCursor(x, y, blink, color)
|
|
Sets the cursor position and color
|
|
|
|
### Parameters
|
|
* `x` `number` The x position of the cursor
|
|
* `y` `number` The y position of the cursor
|
|
* `blink` `boolean` Whether the cursor should blink
|
|
* `color` `number` The color of the cursor
|
|
|
|
## Input:updateViewport()
|
|
Updates the input's viewport
|
|
|
|
### Returns
|
|
* `Input` `self` The updated instance
|
|
|
|
|