From 841e6252c95244f0ee7faf2c01d33f69a8ab483a Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Wed, 17 Jan 2024 21:31:49 -0600 Subject: common tree package for toolkits This update provides *lots* of toolkit updates. This will allow the next step of debugging the gocui toolkit to make it work again. There are new common routines for handling the plugin channel communication Signed-off-by: Jeff Carr --- tree/debug.go | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tree/debug.go (limited to 'tree/debug.go') diff --git a/tree/debug.go b/tree/debug.go new file mode 100644 index 0000000..c79f35b --- /dev/null +++ b/tree/debug.go @@ -0,0 +1,44 @@ +package tree + +import ( + "go.wit.com/log" + "go.wit.com/gui/widget" +) + +func (n *Node) ShowButtons() { + if n.WidgetType == widget.Button { + n.DumpWidget("Button:") + } + + for _, child := range n.children { + child.ShowButtons() + } +} + +func (n *Node) DumpWidget(pad string) { + log.Warn("node:", pad, n.WidgetId, ",", n.WidgetType, ",", n.GetProgName()) +} + +var depth int = 0 + +func (n *Node) ListWidgets() { + if (n == nil) { + log.Warn("ERRRORRRR: n == nil in ListWidgets()") + log.Warn("ERRRORRRR: n == nil in ListWidgets()") + log.Warn("ERRRORRRR: n == nil in ListWidgets()") + return + } + + var pad string + for i := 0; i < depth; i++ { + pad = pad + " " + } + n.DumpWidget(pad) + + for _, child := range n.children { + depth += 1 + child.ListWidgets() + depth -= 1 + } + return +} -- cgit v1.2.3