summaryrefslogtreecommitdiff
path: root/generateGui.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-09-26 13:04:04 -0500
committerJeff Carr <[email protected]>2025-09-26 13:04:04 -0500
commitdfab441172ed85355389eb02b84f7629bb15a72c (patch)
tree2c4e3c2e880223833ec3334449ca5d566b7d7205 /generateGui.go
parent9e01ff3989e9be99bffbcd9f335d7f221aa6d06e (diff)
smarter use of Widget in GUI PBv0.5.12
Diffstat (limited to 'generateGui.go')
-rw-r--r--generateGui.go22
1 files changed, 14 insertions, 8 deletions
diff --git a/generateGui.go b/generateGui.go
index 7699e1c..42cbdb9 100644
--- a/generateGui.go
+++ b/generateGui.go
@@ -139,13 +139,14 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, " t.pb.Order = append(t.pb.Order, title)")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " sf := new("+FRUIT+"AnyFunc)")
- fmt.Fprintln(w, " sf.title = title")
fmt.Fprintln(w, " sf.f = func(x *"+FRUIT+") any {")
fmt.Fprintln(w, " return f(x)")
fmt.Fprintln(w, " }")
fmt.Fprintln(w, " sf.attr = new(guipb.ColAttr)")
fmt.Fprintln(w, " sf.attr.Width = int32(sf.Width)")
fmt.Fprintln(w, " sf.attr.Type = guipb.ColAttr_STRING")
+ fmt.Fprintln(w, " sf.Header = new(guipb.Widget)")
+ fmt.Fprintln(w, " sf.Header.Name = title")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " t.anyFuncs = append(t.anyFuncs, sf)")
fmt.Fprintln(w, " return sf")
@@ -156,7 +157,6 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, " t.pb.Order = append(t.pb.Order, title)")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " sf := new("+FRUIT+"AnyFunc)")
- fmt.Fprintln(w, " sf.title = title")
fmt.Fprintln(w, " sf.f = func(x *"+FRUIT+") any {")
fmt.Fprintln(w, " return f(x)")
fmt.Fprintln(w, " }")
@@ -164,6 +164,8 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, " sf.attr.Width = int32(sf.Width)")
fmt.Fprintln(w, " sf.attr.Type = guipb.ColAttr_STRING")
fmt.Fprintln(w, " sf.attr.Click = true")
+ fmt.Fprintln(w, " sf.Header = new(guipb.Widget)")
+ fmt.Fprintln(w, " sf.Header.Name = title")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " t.anyFuncs = append(t.anyFuncs, sf)")
fmt.Fprintln(w, " return sf")
@@ -174,13 +176,14 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, " t.pb.Order = append(t.pb.Order, title)")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " sf := new("+FRUIT+"AnyFunc)")
- fmt.Fprintln(w, " sf.title = title")
fmt.Fprintln(w, " sf.f = func(x *"+FRUIT+") any {")
fmt.Fprintln(w, " return f(x)")
fmt.Fprintln(w, " }")
fmt.Fprintln(w, " sf.attr = new(guipb.ColAttr)")
fmt.Fprintln(w, " sf.attr.Width = int32(sf.Width)")
fmt.Fprintln(w, " sf.attr.Type = guipb.ColAttr_INT")
+ fmt.Fprintln(w, " sf.Header = new(guipb.Widget)")
+ fmt.Fprintln(w, " sf.Header.Name = title")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " t.anyFuncs = append(t.anyFuncs, sf)")
fmt.Fprintln(w, " return sf")
@@ -191,13 +194,14 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, " t.pb.Order = append(t.pb.Order, title)")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " sf := new("+FRUIT+"AnyFunc)")
- fmt.Fprintln(w, " sf.title = title")
fmt.Fprintln(w, " sf.f = func(x *"+FRUIT+") any {")
fmt.Fprintln(w, " return f(x)")
fmt.Fprintln(w, " }")
fmt.Fprintln(w, " sf.attr = new(guipb.ColAttr)")
fmt.Fprintln(w, " sf.attr.Width = int32(sf.Width)")
fmt.Fprintln(w, " sf.attr.Type = guipb.ColAttr_TIME")
+ fmt.Fprintln(w, " sf.Header = new(guipb.Widget)")
+ fmt.Fprintln(w, " sf.Header.Name = title")
fmt.Fprintln(w, "")
fmt.Fprintln(w, " // t.timeFuncs = append(t.timeFuncs, sf)")
fmt.Fprintln(w, " t.anyFuncs = append(t.anyFuncs, sf)")
@@ -205,7 +209,7 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, "}")
fmt.Fprintln(w, "")
fmt.Fprintln(w, "func (sf *"+FRUIT+"AnyFunc) SetTitle(title string) {")
- fmt.Fprintln(w, " sf.title = title")
+ fmt.Fprintln(w, " sf.Header.Name = title")
fmt.Fprintln(w, "}")
fmt.Fprintln(w, "")
fmt.Fprintln(w, "func (mt *"+FRUITS+"Table) SetParent(p *gui.Node) {")
@@ -225,11 +229,12 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
fmt.Fprintln(w, "}")
fmt.Fprintln(w, "")
fmt.Fprintln(w, "type "+FRUIT+"AnyFunc struct {")
- fmt.Fprintln(w, " title string")
+ fmt.Fprintln(w, " // title string")
fmt.Fprintln(w, " f func(*"+FRUIT+") any")
fmt.Fprintln(w, " Custom func(*"+FRUIT+")")
fmt.Fprintln(w, " Width int")
fmt.Fprintln(w, " attr *guipb.ColAttr")
+ fmt.Fprintln(w, " Header *guipb.Widget")
fmt.Fprintln(w, "}")
fmt.Fprintln(w, "")
fmt.Fprintln(w, "type "+FRUITS+"Table struct {")
@@ -245,8 +250,9 @@ func guiMain(w io.Writer, FRUITS string, FRUIT string) {
func guiStringFuncs(w io.Writer, ZOOPB string, FRUITS string, FRUIT string) {
fmt.Fprintln(w, "func (mt *"+FRUITS+"Table) doAnyFuncNew(sf *"+FRUIT+"AnyFunc) bool {")
fmt.Fprintln(w, " r := new(guipb.AnyCol)")
- fmt.Fprintln(w, " r.Header = new(guipb.Widget)")
- fmt.Fprintln(w, " r.Header.Name = sf.title")
+ fmt.Fprintln(w, " // r.Header = new(guipb.Widget)")
+ fmt.Fprintln(w, " // r.Header.Name = sf.title")
+ fmt.Fprintln(w, " r.Header = proto.Clone(sf.Header).(*guipb.Widget)")
fmt.Fprintln(w, " r.Attr = proto.Clone(sf.attr).(*guipb.ColAttr)")
fmt.Fprintln(w, " r.Attr.Width = int32(sf.Width)")
fmt.Fprintln(w, "")