diff options
| author | Jeff Carr <[email protected]> | 2022-11-05 10:19:04 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2022-11-05 10:19:04 -0500 |
| commit | 099efb6b24caf9eaad50d7386636a7ac23552bde (patch) | |
| tree | 215685d7153e6d002c921d4f7ad2fa12d52fe323 /toolkit/andlabs | |
| parent | a72d0ab2d0ff58704cc28993ea428b8c6c8825d7 (diff) | |
v0.4.2 more code cleanups and improvementsv0.4.2
Add command line argv handling using go-arg
make hello world dumb stupid simple again
more swtiching to common code
move debugging options to support go-args
more debugging output cleanup
more debugging cleanups
fix null pointer crash
Diffstat (limited to 'toolkit/andlabs')
| -rw-r--r-- | toolkit/andlabs/button.go | 32 | ||||
| -rw-r--r-- | toolkit/andlabs/common.go | 18 | ||||
| -rw-r--r-- | toolkit/andlabs/dropdown.go | 4 | ||||
| -rw-r--r-- | toolkit/andlabs/group.go | 4 | ||||
| -rw-r--r-- | toolkit/andlabs/slider.go | 22 | ||||
| -rw-r--r-- | toolkit/andlabs/spinner.go | 14 | ||||
| -rw-r--r-- | toolkit/andlabs/structs.go | 6 | ||||
| -rw-r--r-- | toolkit/andlabs/tab.go | 20 | ||||
| -rw-r--r-- | toolkit/andlabs/textbox.go | 4 | ||||
| -rw-r--r-- | toolkit/andlabs/window.go | 18 |
10 files changed, 80 insertions, 62 deletions
diff --git a/toolkit/andlabs/button.go b/toolkit/andlabs/button.go index 07b33aa..4e6ff52 100644 --- a/toolkit/andlabs/button.go +++ b/toolkit/andlabs/button.go @@ -18,7 +18,9 @@ func (t Toolkit) NewButton(name string) *Toolkit { return nil } - log.Println("gui.Toolbox.NewGroup() create", name) + if (DebugToolkit) { + log.Println("gui.Toolbox.NewGroup() create", name) + } b = ui.NewButton(name) newt.uiButton = b @@ -26,20 +28,34 @@ func (t Toolkit) NewButton(name string) *Toolkit { log.Println("TODO: IN TOOLKIT GOROUTINE. SHOULD LEAVE HERE VIA channels. button name =", name) t.Dump() newt.Dump() - log.Println("wit/gui/toolkit NewButton() Should do something here") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() Should do something here") + } if (newt.Custom == nil) { - log.Println("wit/gui/toolkit NewButton() toolkit.Custom == nil") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() toolkit.Custom == nil") + } } else { - log.Println("wit/gui/toolkit NewButton() toolkit.Custom() START") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() toolkit.Custom() START") + } newt.Custom() - log.Println("wit/gui/toolkit NewButton() toolkit.Custom() END") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() toolkit.Custom() END") + } } if (t.Custom == nil) { - log.Println("wit/gui/toolkit NewButton() parent toolkit.Custom == nil") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() parent toolkit.Custom == nil") + } } else { - log.Println("wit/gui/toolkit NewButton() running parent toolkit.Custom() START (IS THIS A BAD IDEA?)") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() running parent toolkit.Custom() START (IS THIS A BAD IDEA?)") + } t.Custom() - log.Println("wit/gui/toolkit NewButton() running parent toolkit.Custom() END (IS THIS A BAD IDEA?)") + if (DebugToolkit) { + log.Println("wit/gui/toolkit NewButton() running parent toolkit.Custom() END (IS THIS A BAD IDEA?)") + } } log.Println("TODO: LEFT TOOLKIT GOROUTINE button name =", name) }) diff --git a/toolkit/andlabs/common.go b/toolkit/andlabs/common.go index 75f7444..569621d 100644 --- a/toolkit/andlabs/common.go +++ b/toolkit/andlabs/common.go @@ -12,30 +12,38 @@ func init() { func (t Toolkit) commonChange(widget string) { s := t.String() - log.Println("gui.Toolkit.ui.OnChanged() =", s) if (DebugToolkit) { log.Println("gui.Toolkit.ui.OnChanged() =", s) } if (t.OnChanged != nil) { - log.Println("gui.Toolkit.OnChanged() trying to run toolkit.OnChanged() entered val =", s) + if (DebugToolkit) { + log.Println("gui.Toolkit.OnChanged() trying to run toolkit.OnChanged() entered val =", s) + } t.OnChanged(&t) return } if (t.Custom != nil) { - log.Println("gui.Toolkit.OnChanged() Running toolkit.Custom()") - t.Dump() + if (DebugToolkit) { + log.Println("gui.Toolkit.OnChanged() Running toolkit.Custom()") + t.Dump() + } t.Custom() return } - log.Println("gui.Toolkit.OnChanged() ENDED without finding any callback") + if (DebugToolkit) { + log.Println("gui.Toolkit.OnChanged() ENDED without finding any callback") + } } +// does some sanity checks on the internal structs of the binary tree +// TODO: probably this should not panic unless it's running in devel mode (?) func (t Toolkit) broken() bool { if (t.uiBox == nil) { log.Println("gui.Toolkit.UiBox == nil. I can't add a widget without a place to put it") // log.Println("probably could just make a box here?") // corruption or something horrible? panic("wit/gui toolkit/andlabs func broken() invalid goroutine access into this toolkit?") + panic("wit/gui toolkit/andlabs func broken() this probably should not cause the app to panic here (?)") return true } if (t.uiWindow == nil) { diff --git a/toolkit/andlabs/dropdown.go b/toolkit/andlabs/dropdown.go index 51d618d..ca09a99 100644 --- a/toolkit/andlabs/dropdown.go +++ b/toolkit/andlabs/dropdown.go @@ -9,7 +9,9 @@ import _ "github.com/andlabs/ui/winmanifest" func (t *Toolkit) NewDropdown(title string) *Toolkit { // make new node here - log.Println("gui.Toolbox.NewDropdownCombobox()") + if (DebugToolkit) { + log.Println("gui.Toolbox.NewDropdownCombobox()", title) + } var newt Toolkit if t.broken() { diff --git a/toolkit/andlabs/group.go b/toolkit/andlabs/group.go index c42ac0d..f48a78d 100644 --- a/toolkit/andlabs/group.go +++ b/toolkit/andlabs/group.go @@ -17,7 +17,9 @@ func (t Toolkit) NewGroup(title string) *Toolkit { return nil } - log.Println("gui.Toolbox.NewGroup() create", title) + if (DebugToolkit) { + log.Println("gui.Toolbox.NewGroup() create", title) + } g := ui.NewGroup(title) g.SetMargined(margin) t.uiBox.Append(g, stretchy) diff --git a/toolkit/andlabs/slider.go b/toolkit/andlabs/slider.go index 7d4f42a..ad801f8 100644 --- a/toolkit/andlabs/slider.go +++ b/toolkit/andlabs/slider.go @@ -6,9 +6,6 @@ import "os" import "github.com/andlabs/ui" import _ "github.com/andlabs/ui/winmanifest" -import "github.com/davecgh/go-spew/spew" - -// func NewSlider(b *ui.Box, name string *Toolkit { func (t Toolkit) NewSlider(title string, x int, y int) *Toolkit { // make new node here log.Println("gui.Toolkit.NewSpinbox()", x, y) @@ -27,24 +24,7 @@ func (t Toolkit) NewSlider(title string, x int, y int) *Toolkit { t.uiBox.Append(s, stretchy) s.OnChanged(func(spin *ui.Slider) { - i := spin.Value() - log.Println("gui.Toolkit.ui.Slider.OnChanged() val =", i) - if (DebugToolkit) { - log.Println("gui.Toolkit.ui.OnChanged() val =", i) - scs := spew.ConfigState{MaxDepth: 1} - scs.Dump(newt) - } - if (newt.OnChanged != nil) { - log.Println("gui.Toolkit.OnChanged() trying to run toolkit.OnChanged() entered val =", i) - newt.OnChanged(&newt) - return - } - if (newt.Custom != nil) { - log.Println("gui.Toolkit.OnChanged() Running toolkit.Custom()") - newt.Custom() - return - } - log.Println("gui.Toolkit.OnChanged() ENDED without finding any callback") + newt.commonChange("Slider") }) return &newt diff --git a/toolkit/andlabs/spinner.go b/toolkit/andlabs/spinner.go index f147205..885192c 100644 --- a/toolkit/andlabs/spinner.go +++ b/toolkit/andlabs/spinner.go @@ -6,9 +6,6 @@ import "os" import "github.com/andlabs/ui" import _ "github.com/andlabs/ui/winmanifest" -import "github.com/davecgh/go-spew/spew" - -// func NewSlider(b *ui.Box, name string *Toolkit { func (t Toolkit) NewSpinner(title string, x int, y int) *Toolkit { // make new node here log.Println("gui.Toolkit.NewSpinner()", x, y) @@ -26,16 +23,7 @@ func (t Toolkit) NewSpinner(title string, x int, y int) *Toolkit { t.uiBox.Append(s, stretchy) s.OnChanged(func(s *ui.Spinbox) { - i := s.Value() - if (DebugToolkit) { - log.Println("gui.Toolkit.ui.OnChanged() val =", i) - scs := spew.ConfigState{MaxDepth: 1} - scs.Dump(newt) - } - if (t.OnChanged != nil) { - log.Println("gui.Toolkit.OnChanged() entered val =", i) - newt.OnChanged(&newt) - } + newt.commonChange("Spinner") }) return &newt diff --git a/toolkit/andlabs/structs.go b/toolkit/andlabs/structs.go index edad27e..90f9409 100644 --- a/toolkit/andlabs/structs.go +++ b/toolkit/andlabs/structs.go @@ -93,7 +93,7 @@ func forceDump(t *Toolkit) { } func (t *Toolkit) GetText() string { - forceDump(t) + t.Dump() if (DebugToolkit) { log.Println("gui.Toolkit.Text() Enter") scs := spew.ConfigState{MaxDepth: 1} @@ -110,7 +110,9 @@ func (t *Toolkit) GetText() string { log.Println("gui.Toolkit.Value() =", t.uiMultilineEntry.Text()) } text := t.uiMultilineEntry.Text() - log.Println("gui.Toolkit.Value() text =", text) + if (DebugToolkit) { + log.Println("gui.Toolkit.Value() text =", text) + } t.text = text return text } diff --git a/toolkit/andlabs/tab.go b/toolkit/andlabs/tab.go index a0565c0..c641fc0 100644 --- a/toolkit/andlabs/tab.go +++ b/toolkit/andlabs/tab.go @@ -61,14 +61,18 @@ func (t *Toolkit) AddTab(name string) *Toolkit { func tabSetMargined(tab *ui.Tab) { c := tab.NumPages() for i := 0; i < c; i++ { - log.Println("SetMargined", i, margin) + if (DebugToolkit) { + log.Println("SetMargined", i, margin) + } tab.SetMargined(i, margin) } } func newTab(w *ui.Window, name string) *Toolkit { - log.Println("gui.toolkit.NewTab() ADD", name) var t Toolkit + if (DebugToolkit) { + log.Println("gui.toolkit.NewTab() ADD", name) + } if (w == nil) { log.Println("gui.toolkit.NewTab() node.UiWindow == nil. I can't add a tab without a window") @@ -77,7 +81,9 @@ func newTab(w *ui.Window, name string) *Toolkit { time.Sleep(1 * time.Second) return nil } - log.Println("gui.toolkit.AddTab() START name =", name) + if (DebugToolkit) { + log.Println("gui.toolkit.AddTab() START name =", name) + } tab := ui.NewTab() w.SetMargined(margin) @@ -94,14 +100,18 @@ func newTab(w *ui.Window, name string) *Toolkit { } func (t *Toolkit) appendTab(name string) *Toolkit { - log.Println("gui.toolkit.NewTab() ADD", name) var newT Toolkit + if (DebugToolkit) { + log.Println("gui.toolkit.NewTab() ADD", name) + } if (t.uiTab == nil) { log.Println("gui.Toolkit.UiWindow == nil. I can't add a widget without a place to put it") panic("should never have happened. wit/gui/toolkit has ui.Tab == nil") } - log.Println("gui.toolkit.AddTab() START name =", name) + if (DebugToolkit) { + log.Println("gui.toolkit.AddTab() START name =", name) + } var hbox *ui.Box if (defaultBehavior) { diff --git a/toolkit/andlabs/textbox.go b/toolkit/andlabs/textbox.go index 95bfbaa..44946b8 100644 --- a/toolkit/andlabs/textbox.go +++ b/toolkit/andlabs/textbox.go @@ -6,7 +6,9 @@ import "github.com/andlabs/ui" import _ "github.com/andlabs/ui/winmanifest" func (t Toolkit) NewTextbox(name string) *Toolkit { - log.Println("gui.Toolkit.NewTextbox()", name) + if (DebugToolkit) { + log.Println("gui.Toolkit.NewTextbox()", name) + } var newt Toolkit if t.broken() { diff --git a/toolkit/andlabs/window.go b/toolkit/andlabs/window.go index 2aef431..3e5f16a 100644 --- a/toolkit/andlabs/window.go +++ b/toolkit/andlabs/window.go @@ -22,17 +22,25 @@ func NewWindow(title string, x int, y int) *Toolkit { w.SetBorderless(canvas) w.SetMargined(margin) w.OnClosing(func(*ui.Window) bool { - log.Println("ui.Window().OnExit() SHOULD ATTEMPT CALLBACK here") - t.Dump() + if (DebugToolkit) { + log.Println("ui.Window().OnExit() SHOULD ATTEMPT CALLBACK here") + t.Dump() + } if (t.OnExit != nil) { - log.Println("ui.Window().OnExit() ATTEMPTING toolkit.OnExit CALLBACK") + if (DebugToolkit) { + log.Println("ui.Window().OnExit() ATTEMPTING toolkit.OnExit CALLBACK") + } t.OnExit(&t) } if (t.Custom != nil) { - log.Println("ui.Window().Custom() ATTEMPTING toolkit.Custom CALLBACK") + if (DebugToolkit) { + log.Println("ui.Window().Custom() ATTEMPTING toolkit.Custom CALLBACK") + } t.Custom() } - log.Println("ui.Window().OnExit() Toolkit.OnExit is nil") + if (DebugToolkit) { + log.Println("ui.Window().OnExit() Toolkit.OnExit is nil") + } return true }) w.Show() |
