summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-01-11 00:51:37 -0600
committerJeff Carr <[email protected]>2024-01-11 00:51:37 -0600
commit5f6afb8cf8293f819711ccdf791296edfd7ce7d6 (patch)
treecd1fdf500294e30df6628045b307e7d146c4c55a
parentb3fce8457ff73a31fe889eb7b1315fae2e016cc4 (diff)
continuing move toward var value anyv0.12.1
Signed-off-by: Jeff Carr <[email protected]>
-rw-r--r--common.go41
-rw-r--r--setText.go48
2 files changed, 53 insertions, 36 deletions
diff --git a/common.go b/common.go
index 28be258..795fd76 100644
--- a/common.go
+++ b/common.go
@@ -4,7 +4,6 @@ package gui
import (
"regexp"
- "errors"
"go.wit.com/log"
"go.wit.com/gui/widget"
)
@@ -66,46 +65,12 @@ func (n *Node) AddText(str string) {
}
}
-func (n *Node) SetText(text string) *Node {
- log.Log(CHANGE, "SetText() value =", text)
-
- n.Text = text
- n.S = text
-
- if ! n.hidden {
- a := newAction(n, widget.SetText)
- sendAction(a)
- }
- return n
-}
-
func (n *Node) SetNext(w int, h int) {
n.NextW = w
n.NextH = h
log.Info("SetNext() w,h =", n.NextW, n.NextH)
}
-func (n *Node) Set(val any) {
- log.Log(CHANGE, "Set() value =", val)
-
- switch v := val.(type) {
- case bool:
- n.B = val.(bool)
- case string:
- n.Text = val.(string)
- n.S = val.(string)
- case int:
- n.I = val.(int)
- default:
- log.Error(errors.New("Set() unknown type"), "v =", v)
- }
-
- if ! n.hidden {
- a := newAction(n, widget.Set)
- sendAction(a)
- }
-}
-
func (n *Node) AppendText(str string) {
tmp := n.S + str
n.Text = tmp
@@ -246,7 +211,11 @@ func (n *Node) Window(title string) *Node {
}
func (n *Node) Ready() bool {
- if n == nil {return false}
+ if n == nil {
+ log.Warn("Ready() got node == nil")
+ // TODO: figure out if you can identify the code trace to help find the root cause
+ return false
+ }
return true
}
diff --git a/setText.go b/setText.go
new file mode 100644
index 0000000..5e04d70
--- /dev/null
+++ b/setText.go
@@ -0,0 +1,48 @@
+package gui
+
+// Common actions for widgets like 'Enable' or 'Hide'
+
+import (
+ "errors"
+
+ "go.wit.com/log"
+ "go.wit.com/gui/widget"
+)
+
+func (n *Node) SetText(text string) *Node {
+ if ! n.Ready() { return n }
+ log.Log(CHANGE, "SetText() value =", text)
+
+ n.value = text
+
+ if ! n.hidden {
+ a := newAction(n, widget.SetText)
+ a.A = n.value
+ sendAction(a)
+ }
+ return n
+}
+
+func (n *Node) Set(val any) {
+ log.Log(CHANGE, "Set() value =", val)
+
+ n.value = val
+
+ switch v := val.(type) {
+ case bool:
+ n.B = val.(bool)
+ case string:
+ n.Text = val.(string)
+ n.S = val.(string)
+ case int:
+ n.I = val.(int)
+ default:
+ log.Error(errors.New("Set() unknown type"), "v =", v)
+ }
+
+ if ! n.hidden {
+ a := newAction(n, widget.Set)
+ a.A = val
+ sendAction(a)
+ }
+}