From bd9bce9f1278743e961a18cab688fdb09876560c Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Wed, 17 Jan 2024 16:11:26 -0500 Subject: add text label widget --- gui/widget/widget.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'gui/widget/widget.go') diff --git a/gui/widget/widget.go b/gui/widget/widget.go index fbf866a..82738bd 100644 --- a/gui/widget/widget.go +++ b/gui/widget/widget.go @@ -11,7 +11,24 @@ import ( "volute/gui/win" ) -func Input(env gui.Env, r image.Rectangle, val chan<- float64) { +func Label(text string, r image.Rectangle, env gui.Env) { + redraw := func(drw draw.Image) image.Rectangle { + drawText([]byte(text), drw, r) + return r + } + env.Draw() <- redraw + for event := range env.Events() { + switch event := event.(type) { + case win.WiFocus: + if event.Focused { + env.Draw() <- redraw + } + } + } + close(env.Draw()) +} + +func Input(val chan<- float64, r image.Rectangle, env gui.Env) { redraw := func(text []byte) func(draw.Image) image.Rectangle { return func(drw draw.Image) image.Rectangle { drawText(text, drw, r) -- cgit v1.2.3