Skip to content

UI Text Input

Single-line text field with placeholder; raises submitted and value_changed.

Type: UITextInputNode · Category: UI & Interface · Also found as: uitextinput

Property Type Default Description
size vec2 (360, 28) Width and height (px). Range 4 to 1280.
label string "Input" Caption shown next to the control.
labelWidth number 130 Width reserved for the label (px); 0 = none. Range 0 to 300.
maxLength integer 64 Most characters accepted. Range 1 to 255.

Plus the common properties every node has.

Call them on the node (self.node in its script, or self.node:get_node("path")). Every node also has the Node methods.

Connects a handler to one of this node’s events: value_changed (The value changed), submitted (Enter was pressed); the tree events; custom ones.

self.node:connect("value_changed", function(value, source) Log.info("value_changed") end)
  • event UITextInputNodeEvent|string
  • handler fun(value: any, source: UITextInputNode)

Returns integer id Connection id for disconnect

Reads an Inspector property by its path (vectors and colours as tables); “script.” reads a field of the node’s script.

local value = self.node:get_property("size")
  • path UITextInputNodeProperty|string

Returns any

UITextInputNode:set_property(path, value, y)

Section titled “UITextInputNode:set_property(path, value, y)”

Sets an Inspector property by its path: vectors as {x, y} or x, y; colours as {r, g, b[, a]} 0..1 or “#rrggbb[aa]”; enums by name; “script.” a field of the node’s script.

self.node:set_property("size", 100, 50)
  • path UITextInputNodeProperty|string
  • value any
  • y? number
{
"type": "UITextInputNode",
"name": "UITextInput",
"position": [
0,
0
],
"properties": {
"size": [
360,
28
],
"label": "Input",
"labelWidth": 130
}
}