class

GSDL::UI::TextInput

Inherits GSDL::UI::Container < GSDL::UI::Element < Reference < Object

Constants

IS_MAC = {% if flag?(:darwin) %} true {% else %} false {% end %}

Constructors

new(text : String = "", placeholder : String = "", width : Int32 = 200, height : Int32 = 40, x : Int32 = 0, y : Int32 = 0, anchor : Anchor = Anchor::TopLeft, max_length : Int32 | Nil = nil, mask_character : Char | Nil = nil, read_only : Bool = false, disabled : Bool = false, allowed_characters : Regex | String | Nil = nil, validator : Proc(String, Bool) | Nil = nil, invalid_border_color : Color | String | Nil = nil, background_color : Color | String = ColorScheme.get(:ui_bg, Color.parse("#1e1e24")), border_color : Color | String = ColorScheme.get(:border, Color.parse("#4b5563")), hover_border_color : Color | String = ColorScheme.get(:main, Color.parse("#10b981")), focus_border_color : Color | String = ColorScheme.get(:main, Color.parse("#10b981")), text_color : Color | String = ColorScheme.get(:ui_text, Color.parse("#f4f4f5")), placeholder_color : Color | String = Color.parse("#9ca3af"), selection_color : Color | String = Color.new(14, 165, 233, 102), read_only_background_color : Color | String = Color.new(r: 255, g: 255, b: 255, a: 20), read_only_border_color : Color | String | Nil = nil, read_only_hover_border_color : Color | String | Nil = nil, read_only_focus_border_color : Color | String | Nil = nil, disabled_overlay_color : Color | String = Color.new(r: 128, g: 128, b: 128, a: 128), font_size : Num = 16, padding : SpacingInput = Spacing.new(left: 8, right: 8, top: 4, bottom: 4), margin : SpacingInput = 0, flex : UInt8 = 0_u8, h_align : HorizontalAlign = HorizontalAlign::Left, v_align : VerticalAlign = VerticalAlign::Center, on_change : Proc(String, Nil) | Nil = nil, on_submit : Proc(String, Nil) | Nil = nil, background_skin : GSDL::NinePatch | Nil = nil)
Source
new(*args, **kwargs)
Source
new(text : String = "", placeholder : String = "", width : Int32 = 200, height : Int32 = 40, x : Int32 = 0, y : Int32 = 0, anchor : Anchor = Anchor::TopLeft, max_length : Int32 | Nil = nil, mask_character : Char | Nil = nil, read_only : Bool = false, disabled : Bool = false, allowed_characters : Regex | String | Nil = nil, validator : Proc(String, Bool) | Nil = nil, invalid_border_color : Color | String | Nil = nil, background_color : Color | String = ColorScheme.get(:ui_bg, Color.parse("#1e1e24")), border_color : Color | String = ColorScheme.get(:border, Color.parse("#4b5563")), hover_border_color : Color | String = ColorScheme.get(:main, Color.parse("#10b981")), focus_border_color : Color | String = ColorScheme.get(:main, Color.parse("#10b981")), text_color : Color | String = ColorScheme.get(:ui_text, Color.parse("#f4f4f5")), placeholder_color : Color | String = Color.parse("#9ca3af"), selection_color : Color | String = Color.new(14, 165, 233, 102), read_only_background_color : Color | String = Color.new(r: 255, g: 255, b: 255, a: 20), read_only_border_color : Color | String | Nil = nil, read_only_hover_border_color : Color | String | Nil = nil, read_only_focus_border_color : Color | String | Nil = nil, disabled_overlay_color : Color | String = Color.new(r: 128, g: 128, b: 128, a: 128), font_size : Num = 16, padding : SpacingInput = Spacing.new(left: 8, right: 8, top: 4, bottom: 4), margin : SpacingInput = 0, flex : UInt8 = 0_u8, h_align : HorizontalAlign = HorizontalAlign::Left, v_align : VerticalAlign = VerticalAlign::Center, on_change : Proc(String, Nil) | Nil = nil, background_skin : GSDL::NinePatch | Nil = nil, &block : String -> Nil)

Expose constructor with blocks for on_submit callback

Source
new(*args, **kwargs, &)
Source

Instance methods

allowed_characters
Source
allowed_characters=(val : Regex | String | Nil)
Source
border_color
Source
border_color=(border_color : Color)
Source
border_width
Source
border_width=(border_width : Int32)
Source
disabled=(val : Bool)
Source
disabled?
Source
disabled_overlay_color

Disabled state styling

Source
disabled_overlay_color=(disabled_overlay_color : Color)

Disabled state styling

Source
draw(draw : Draw)
Source
focus_border_color
Source
focus_border_color=(focus_border_color : Color)
Source
focusable?
Source
h_align
Source
h_align=(align : HorizontalAlign)
Source
hover_border_color
Source
hover_border_color=(hover_border_color : Color)
Source
hovered=(value : Bool)
Source
invalid_border_color
Source
invalid_border_color=(invalid_border_color : Color | Nil)
Source
layout!
Source
mask_character
Source
mask_character=(mask_character : Char | Nil)
Source
max_length
Source
max_length=(max_length : Int32 | Nil)
Source
on_change
Source
on_change=(on_change : Proc(String, Nil) | Nil)
Source
on_focus
Source
on_key_down(event : GSDL::Event) : Bool
Source
on_mouse_down(event : GSDL::Event) : Bool
Source
on_mouse_move(event : GSDL::Event) : Bool
Source
on_mouse_up(event : GSDL::Event) : Bool
Source
on_submit
Source
on_submit=(on_submit : Proc(String, Nil) | Nil)
Source
on_text_input(event : GSDL::Event) : Bool
Source
on_unfocus
Source
placeholder
Source
placeholder=(placeholder : String)
Source
placeholder_color
Source
placeholder_color=(placeholder_color : Color)
Source
read_only=(val : Bool)
Source
read_only?
Source
read_only_background_color

Read-only state styling

Source
read_only_background_color=(read_only_background_color : Color)

Read-only state styling

Source
read_only_border_color
Source
read_only_border_color=(read_only_border_color : Color)
Source
read_only_focus_border_color
Source
read_only_focus_border_color=(read_only_focus_border_color : Color)
Source
read_only_hover_border_color
Source
read_only_hover_border_color=(read_only_hover_border_color : Color)
Source
request_focus
Source
selection_color
Source
selection_color=(selection_color : Color)
Source
text
Source
text=(val : String)
Source
text_color
Source
text_color=(text_color : Color)
Source
update(dt : Float32)
Source
v_align
Source
v_align=(align : VerticalAlign)
Source
valid?
Source
validator
Source
validator=(validator : Proc(String, Bool) | Nil)
Source

Nested types