// Copyright 2017-2025 WIT.COM Inc. All rights reserved. // Use of this source code is governed by the GPL 3.0 package main import ( "slices" "go.wit.com/lib/protobuf/guipb" "go.wit.com/log" "go.wit.com/toolkits/tree" "go.wit.com/widget" ) func showTable(t *guipb.Table) { log.Info("gocui: should show table here") if t == nil { return } log.Info("gocui: table.Title", t.Title) } func enableWidget(n *tree.Node) { tk := n.TK.(*guiWidget) tk.Enable() } func disableWidget(n *tree.Node) { tk := n.TK.(*guiWidget) tk.Disable() } func showWidget(n *tree.Node) { tk := n.TK.(*guiWidget) tk.Show() } func hideWidget(n *tree.Node) { tk := n.TK.(*guiWidget) if n.WidgetType == widget.Window { tk.windowFrame.Hide() tk.hideWidgets() } tk.Hide() tk.deleteWidget() } func (tk *guiWidget) deleteWidget() { log.Info("gocui deleteWidget() looking for child to delete:", tk.cuiName) p := tk.parent for i, child := range p.children { if tk == child { log.Info("deleteWidget() found parent with child to delete:", i, child.cuiName) p.children = slices.Delete(p.children, i, i+1) } } }