diff options
| author | Jeff Carr <[email protected]> | 2024-01-03 13:37:03 -0600 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2024-01-03 13:37:03 -0600 |
| commit | a08bbaf04ff536e8fae3ab5396dc54c290945301 (patch) | |
| tree | 79e0cd54b6d67ded948e6ce9caba68ab7aae5444 /debugWindow.go | |
| parent | d8f1107387af688e9b161a0c01dd70241741edba (diff) | |
all debug stuff moved to 'go.wit.com/gui/debugger'v0.9.9
I finally was able to clean out all the debugging
code and make a clean, new GO debugger. It's quite
nice I think. Well, it's useful to me at any rate.
2024 New Years wish: someone contributes code to improve it
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'debugWindow.go')
| -rw-r--r-- | debugWindow.go | 185 |
1 files changed, 0 insertions, 185 deletions
diff --git a/debugWindow.go b/debugWindow.go deleted file mode 100644 index bffd55c..0000000 --- a/debugWindow.go +++ /dev/null @@ -1,185 +0,0 @@ -package gui - -import ( - newlog "go.wit.com/log" -) - -// TODO: move all this shit into somewhere not global - -// main debugging window -var bugWin *Node - -var mapWindows map[string]*Node -var checkd, checkdn, checkdt, checkdtk, lb1, lb2 *Node -var myButton *Node - -/* - Creates a window helpful for debugging this package -*/ -func (n *Node) DebugWindow() { - newlog.Warn("Don't use DebugWindow() directly anymore") - DebugWindow() // todo, remove the non-binary tree access -} - -func DebugWindow() { - bugWin = me.rootNode.NewWindow("go.wit.com/gui debug window").DebugTab("Debug Tab") - bugWin.Custom = bugWin.StandardClose - if ArgDebug() { - newlog.SetTmp() - bugWin.DebugFlags() - } -} - -// should the debugging windows be new windows or tabs -// var makeTabs bool = true -func (n *Node) UseTabs() bool { - return me.makeTabs -} - -func (n *Node) SetTabs(b bool) { - me.makeTabs = b -} - -func (n *Node) DebugTab(title string) *Node { - var newN, gog, g1 *Node - // var logSettings *gadgets.LogSettings - - // time.Sleep(1 * time.Second) - newN = n.NewTab(title) - -//////////////////////// main debug things ////////////////////////////////// - gog = newN.NewGroup("Debugging Windows:") - - // generally useful debugging - cb := gog.NewCheckbox("Seperate windows") - cb.Custom = func() { - log(debugGui, "Custom() n.widget =", cb.Name, cb.B) - n.SetTabs(cb.B) - } - cb.Set(false) - n.SetTabs(false) - - gog.NewButton("logging", func () { - bugWin.DebugFlags() - }) - gog.NewButton("Debug Widgets", func () { - DebugWidgetWindow(newN) - }) - gog.NewButton("GO Language Internals", func () { - bugWin.DebugGolangWindow() - }) - gog.NewButton("GO Channels debug", func () { - bugWin.DebugGoChannels() - }) - - gog.NewLabel("Force Quit:") - - gog.NewButton("os.Exit()", func () { - exit() - }) - -//////////////////////// window debugging things ////////////////////////////////// - g1 = newN.NewGroup("list things") - - g1.NewButton("List toolkits", func () { - dropdownWindow(g1) - me.rootNode.ListToolkits() - }) - g1.NewButton("List Windows", func () { - dropdownWindow(g1) - }) - g1.NewButton("List Window Widgets", func () { - dropdownWindowWidgets(g1) - }) - - g2 := newN.NewGroup("more things") - - g2.NewButton("Node.ListChildren(true)", func () { - if (activeWidget == nil) { - activeWidget = me.rootNode - } - activeWidget.ListChildren(true) - }) - - g2.NewButton("test conc", func () { - makeConc() - }) - - g2.NewButton("List Plugins", func () { - for _, aplug := range allPlugins { - log(true, "Loaded plugin:", aplug.name, aplug.filename) - } - }) - - g2.NewButton("load toolkit 'gocui'", func () { - me.rootNode.LoadToolkit("gocui") - }) - - g2.NewButton("load toolkit 'andlabs'", func () { - me.rootNode.LoadToolkit("andlabs") - }) - - return newN -} - -func dropdownWindow(p *Node) { - var mapWindows map[string]*Node - mapWindows = make(map[string]*Node) - - dd := p.NewDropdown("Window Dropdown") - dd.Custom = func() { - name := dd.S - activeWidget = mapWindows[name] - setActiveWidget(activeWidget) - log(true, "The Window was set to", name) - } - log(debugGui, "dd =", dd) - if (activeWidget == nil) { - // the debug window doesn't exist yet so you can't display the change - // TODO: make a fake binary tree for this(?) - return - } - - // var last = "" - for _, child := range me.rootNode.children { - log(logInfo, "\t\t", child.id, child.Name) - dd.AddDropdownName(child.Name) - // last = child.Name - mapWindows[child.Name] = child - if (activeWidget == nil) { - activeWidget = child - } - } - // dd.SetDropdownName(last) -} - -func dropdownWindowWidgets(p *Node) { - var mapWindows map[string]*Node - mapWindows = make(map[string]*Node) - - dd := p.NewDropdown("Window Widgets Dropdown") - dd.Custom = func() { - name := dd.S - activeWidget = mapWindows[name] - setActiveWidget(activeWidget) - } - log(debugGui, "dd =", dd) - - // log("dumpWidget() ", b, listChildrenDepth, defaultPadding, n.id, info) - - var addDropdowns func (*Node) - addDropdowns = func (n *Node) { - s := n.dumpWidget(true) - dd.AddDropdownName(s) - mapWindows[s] = n - - for _, child := range n.children { - listChildrenDepth += 1 - addDropdowns(child) - listChildrenDepth -= 1 - } - } - - // list everything in the binary tree - addDropdowns(me.rootNode) -} |
