aboutsummaryrefslogtreecommitdiffstats
path: root/gui/widget/widget.go
diff options
context:
space:
mode:
Diffstat (limited to 'gui/widget/widget.go')
-rw-r--r--gui/widget/widget.go19
1 files changed, 18 insertions, 1 deletions
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)