summaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
authorAlexander M Pickering <alex@cogarr.net>2025-01-21 16:03:25 -0600
committerAlexander M Pickering <alex@cogarr.net>2025-01-21 16:03:25 -0600
commit89a8f94ac0206412c1a2d7b8766d97dbdbd36253 (patch)
treec9ddc23d31d3c5058d3465dabb68aae7b8209138 /src/ui
parent0370d64b3bd7914be55358817e52bbc8a529a7d3 (diff)
downloadggj25-89a8f94ac0206412c1a2d7b8766d97dbdbd36253.tar.gz
ggj25-89a8f94ac0206412c1a2d7b8766d97dbdbd36253.tar.bz2
ggj25-89a8f94ac0206412c1a2d7b8766d97dbdbd36253.zip
work
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/button.moon4
-rw-r--r--src/ui/textbox.moon14
2 files changed, 13 insertions, 5 deletions
diff --git a/src/ui/button.moon b/src/ui/button.moon
index 5915bc9..6eaa6d3 100644
--- a/src/ui/button.moon
+++ b/src/ui/button.moon
@@ -2,6 +2,7 @@
s = require("ui.sprites")
util = require("util")
color = require("color")
+world = require("world")
states = {"up","down"}
rows = {"upper","mid","lower"}
cols = {"left","mid","right"}
@@ -107,8 +108,9 @@ class Button
@text = am.text(text, "left","top", color.am_color.foreground)
position\append(
am.translate(@@down_upper_left.width, -@@down_upper_right.height)\append(
+ am.scale(world.controller.text_size)\append(
@text
- ))
+ )))
@depressed = false
down: () =>
@depressed = true
diff --git a/src/ui/textbox.moon b/src/ui/textbox.moon
index c029ba4..bdb8e13 100644
--- a/src/ui/textbox.moon
+++ b/src/ui/textbox.moon
@@ -14,7 +14,13 @@ class Textbox extends Button
am.translate(@em,0)\append(
am.rect(0,0,@em/4,-@em,color.am_color.foreground)
))
- @cursor.hidden = true
+ @cursor\action(() =>
+ if not @should_hide
+ @hidden = math.floor(am.current_time! * 2) % 2 == 0
+ else
+ @hidden = true
+ )
+ @cursor.should_hide = true
@text\append(@cursor)
@cursor_pos = #@text.text
@update_cursor_pos!
@@ -23,7 +29,7 @@ class Textbox extends Button
for i = 1, #valid_chars
char = valid_chars\sub(i,i)
@valid_chars[char] = char
- @valid_chars[char\upper] = char\upper
+ @valid_chars[char\upper!] = char\upper!
for i = 0,9
@valid_chars[tostring(i)] = tostring(i)
@valid_chars["kp_" .. tostring(i)] = tostring(i)
@@ -57,11 +63,11 @@ class Textbox extends Button
@cursor
down: () =>
super!
- @cursor.hidden = false
+ @cursor.should_hide = false
@text.color = color.am_color.foreground
up: () =>
super!
- @cursor.hidden = true
+ @cursor.should_hide = true
@text.color = color.am_color.shadow
update_cursor_pos: () =>
@.cursor("translate").x = @cursor_pos * 9