online multiplayer chess game (note server currently down)
Diffstat (limited to 'ui/chat/TextEditor.gd')
| -rw-r--r-- | ui/chat/TextEditor.gd | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/ui/chat/TextEditor.gd b/ui/chat/TextEditor.gd new file mode 100644 index 0000000..22bdeaa --- /dev/null +++ b/ui/chat/TextEditor.gd @@ -0,0 +1,35 @@ +extends Container +class_name TextEditor + +var text setget set_text, get_text + + +func set_text(new_text: String) -> void: + textedit.text = new_text + _text_changed() + + +func get_text() -> String: + return textedit.text + + +signal done(text) + +onready var textedit: TextEdit = $"%text" +onready var placeholder := $"%placeholder" + + +func _ready(): + $"%SendButton".visible = OS.has_touchscreen_ui_hint() + + +func _text_changed() -> void: + placeholder.visible = len(textedit.text) == 0 + + +func send(msg := textedit.text) -> void: + msg = msg.strip_edges() + if msg: + textedit.text = "" + textedit.emit_signal("text_changed") + emit_signal("done", msg) |