From 20f13a4b5be1a986e1085214f492a0afe6db322f Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sun, 12 Mar 2023 08:47:16 -0500 Subject: Squashed commit of the following: commit 448abc843e2241bab6c399f7a836dccba1defc18 Author: Jeff Carr Date: Sun Mar 12 08:35:28 2023 -0500 this should probably be a new release now Signed-off-by: Jeff Carr commit a4064f7a6c5ac67437768aa2bc67c75dafc91c4c Author: Jeff Carr Date: Sat Mar 11 03:18:23 2023 -0600 able to work on add 'Box' and play with 'Image' Signed-off-by: Jeff Carr commit 6e59573d85e82ecb005805f50711dddc2df50480 Author: Jeff Carr Date: Sat Mar 11 03:04:34 2023 -0600 rearrange widget debugging Signed-off-by: Jeff Carr commit e0570de75c6eb1b4f49e541d9ef5d83ae4434d3d Author: Jeff Carr Date: Sat Mar 11 02:29:20 2023 -0600 debugging is lots smarter Signed-off-by: Jeff Carr commit ece32a1e43d91cd197d0a8497ad2f034c46126e1 Author: Jeff Carr Date: Fri Mar 10 21:38:23 2023 -0600 first pass on a node delete Signed-off-by: Jeff Carr commit c91cb0eddb0f73f8dea9b21a16cd76c7e2c19a33 Author: Jeff Carr Date: Fri Mar 10 21:06:29 2023 -0600 can recreate window list Signed-off-by: Jeff Carr commit 470f9dc26aefd3626b319264fe151aa48d4d5377 Author: Jeff Carr Date: Fri Mar 10 12:07:34 2023 -0600 attempt to ressurect mouse in the console plugin Signed-off-by: Jeff Carr commit 747bb53e06dda458cc8cd77b665f4d9d07f5e925 Author: Jeff Carr Date: Fri Mar 10 10:47:14 2023 -0600 jesus. gocui actually builds and works again as a plugin it didn't take too much to change it Signed-off-by: Jeff Carr commit 9283c65c8e9b8d2630b251ad952b6b52caddb307 Author: Jeff Carr Date: Fri Mar 10 07:26:53 2023 -0600 show/hide/etc for window widgets Signed-off-by: Jeff Carr commit 5724cd7ffd8595ae049a7c9c21cb2f1a993c4b76 Author: Jeff Carr Date: Fri Mar 10 06:40:36 2023 -0600 compiles and runs Signed-off-by: Jeff Carr commit 44a5e69ce17cb506adfe24ca72cc86caa9ebcc70 Author: Jeff Carr Date: Fri Mar 10 05:57:15 2023 -0600 more debugging improvements Signed-off-by: Jeff Carr commit b86f145f0252e7545b2e7fa78e1d5960cacb7bad Author: Jeff Carr Date: Fri Mar 10 03:42:32 2023 -0600 set margin on tab's works Signed-off-by: Jeff Carr commit d2218c08cf44acd5f017a8faa1439ee6d2fd46d5 Author: Jeff Carr Date: Thu Mar 9 16:26:21 2023 -0600 ignore all *.so files Signed-off-by: Jeff Carr commit e21934fff3cfea30b04df01bf0714f6927aa78f4 Author: Jeff Carr Date: Thu Mar 9 16:25:15 2023 -0600 can't embed the toolkit/*.so files here Signed-off-by: Jeff Carr commit f1e6c5fc9c8ca36db3ad6109d64612b6850fa856 Author: Jeff Carr Date: Thu Mar 9 16:21:14 2023 -0600 andlabs group widget has Show() and Hide() Signed-off-by: Jeff Carr commit e8487504aa76ca99c4891b777585a428fda0ef62 Author: Jeff Carr Date: Thu Mar 9 16:07:56 2023 -0600 pass the node id into the plugin to use in channels Signed-off-by: Jeff Carr commit 3667940a77af4e3855facb9247771d595477302f Author: Jeff Carr Date: Thu Mar 9 14:20:21 2023 -0600 fix SetText() on Label Signed-off-by: Jeff Carr commit 311d6be66db84b63fb7124df64e2e9be0f0b76a4 Author: Jeff Carr Date: Thu Mar 9 14:06:46 2023 -0600 still compiles and runs Signed-off-by: Jeff Carr commit ee4e9b21ef59a97f902c6dae2a57ac7b3063fe3b Author: Jeff Carr Date: Thu Mar 9 11:02:34 2023 -0600 compiles Signed-off-by: Jeff Carr Signed-off-by: Jeff Carr --- toolkit/gocui/debug.go | 107 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 toolkit/gocui/debug.go (limited to 'toolkit/gocui/debug.go') diff --git a/toolkit/gocui/debug.go b/toolkit/gocui/debug.go new file mode 100644 index 0000000..817ee6e --- /dev/null +++ b/toolkit/gocui/debug.go @@ -0,0 +1,107 @@ +package main + +import "git.wit.org/wit/gui/toolkit" + +var defaultBehavior bool = true + +var bookshelf bool // do you want things arranged in the box like a bookshelf or a stack? +var canvas bool // if set to true, the windows are a raw canvas +var menubar bool // for windows +var stretchy bool // expand things like buttons to the maximum size +var padded bool // add space between things like buttons +var margin bool // add space around the frames of windows + +var debugToolkit bool +var debugChange bool +var debugPlugin bool +var debugFlags bool +var debugError bool = true + +// This is important. This sets the defaults for the gui. Without this, there isn't correct padding, etc +func setDefaultBehavior(s bool) { + defaultBehavior = s + if (defaultBehavior) { + log(debugToolkit, "Setting this toolkit to use the default behavior.") + log(debugToolkit, "This is the 'guessing' part as defined by the wit/gui 'Principles'. Refer to the docs.") + stretchy = false + padded = true + menubar = true + margin = true + canvas = false + bookshelf = true // 99% of the time, things make a vertical stack of objects + } else { + log(debugToolkit, "This toolkit is set to ignore the default behavior.") + } +} + +func ShowDebug () { + log(true, "debugToolkit =", debugToolkit) + log(true, "debugChange =", debugChange) + log(true, "debugPlugin =", debugPlugin) + log(true, "debugFlags =", debugFlags) + log(true, "debugError =", debugError) +} + +/* +func (t *gocuiT) Dump(b bool) { + if ! b { + return + } + log(b, "Name = ", t.Name, t.Width, t.Height) + if (t.uiBox != nil) { + log(b, "uiBox =", t.uiBox) + } + if (t.uiButton != nil) { + log(b, "uiButton =", t.uiButton) + } + if (t.uiCombobox != nil) { + log(b, "uiCombobox =", t.uiCombobox) + } + if (t.uiWindow != nil) { + log(b, "uiWindow =", t.uiWindow) + } + if (t.uiTab != nil) { + log(b, "uiTab =", t.uiTab) + } + if (t.uiGroup != nil) { + log(b, "uiGroup =", t.uiGroup) + } + if (t.uiEntry != nil) { + log(b, "uiEntry =", t.uiEntry) + } + if (t.uiMultilineEntry != nil) { + log(b, "uiMultilineEntry =", t.uiMultilineEntry) + } + if (t.uiSlider != nil) { + log(b, "uiSlider =", t.uiSlider) + } + if (t.uiCheckbox != nil) { + log(b, "uiCheckbox =", t.uiCheckbox) + } + widgetDump(b, t.tw) +} +*/ + +func widgetDump(b bool, w *toolkit.Widget) { + if (w == nil) { + log(b, "widget = nil") + return + } + + log(b, "widget.Name =", w.Name) + log(b, "widget.Action =", w.Action) + log(b, "widget.Type =", w.Type) + log(b, "widget.Custom =", w.Custom) + log(b, "widget.B =", w.B) + log(b, "widget.I =", w.I) + log(b, "widget.Width =", w.Width) + log(b, "widget.Height =", w.Height) + log(b, "widget.X =", w.X) + log(b, "widget.Y =", w.Y) +} + +/* +func GetDebugToolkit () bool { + return debugToolkit +} +*/ -- cgit v1.2.3