summaryrefslogtreecommitdiff
path: root/toolkit/andlabs/structs.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2022-10-19 13:23:22 -0500
committerJeff Carr <[email protected]>2022-10-19 13:23:22 -0500
commitf3af1f5b7ff78b3f73d7510622fc9633dec36d35 (patch)
treee4868584d5e19942938aaa122b2e1cab377db000 /toolkit/andlabs/structs.go
parentf7b1036e544238d65b0e3ad46d08075aa4177032 (diff)
Refactor to 'gui/toolkit/'
* add a example cmds/consolemouse uses a console button to launch the andlabs/ui * fix wrong return value in toolkit/NewLabel() * redirect STDIN output to a file * wonderful fix of Window() exit * finally remove the ancient stupid variables x & y * phase out struct 'box' and use 'node' instead * better names for things: use NewFoo() and NewBar()
Diffstat (limited to 'toolkit/andlabs/structs.go')
-rw-r--r--toolkit/andlabs/structs.go64
1 files changed, 59 insertions, 5 deletions
diff --git a/toolkit/andlabs/structs.go b/toolkit/andlabs/structs.go
index ab75139..a089a12 100644
--- a/toolkit/andlabs/structs.go
+++ b/toolkit/andlabs/structs.go
@@ -9,6 +9,10 @@ import "github.com/davecgh/go-spew/spew"
var DebugToolkit bool = false
+var streachy = true
+var border = true
+
+
// stores the raw toolkit internals
type Toolkit struct {
id string
@@ -18,8 +22,12 @@ type Toolkit struct {
Height int
OnChanged func(*Toolkit)
+ OnExit func(*Toolkit)
+
+ Custom func()
uiBox *ui.Box
+ uiBox2 *ui.Box // temporary hack while implementing tabs
uiButton *ui.Button
uiControl *ui.Control
uiEntry *ui.Entry
@@ -30,11 +38,7 @@ type Toolkit struct {
uiTab *ui.Tab
uiText *ui.EditableCombobox
uiWindow *ui.Window
-}
-
-func (t *Toolkit) Dump() {
- log.Println("gui.Toolkit.Dump() uiBox =", t.uiBox)
- log.Println("gui.Toolkit.Dump() uiGroup =", t.uiGroup)
+ UiWindowBad *ui.Window
}
func (t *Toolkit) GetText() string {
@@ -68,6 +72,31 @@ func (t *Toolkit) SetText(s string) bool {
return false
}
+func sanity(t *Toolkit) bool {
+ if (DebugToolkit) {
+ log.Println("gui.Toolkit.Value() Enter")
+ scs := spew.ConfigState{MaxDepth: 1}
+ scs.Dump(t)
+ }
+ if (t.uiEntry == nil) {
+ if (DebugToolkit) {
+ log.Println("gui.Toolkit.Value() =", t.uiEntry.Text)
+ }
+ return false
+ }
+ return true
+}
+
+func (t *Toolkit) SetValue(i int) bool {
+ log.Println("gui.Toolkit.SetValue() START")
+ if (sanity(t)) {
+ return false
+ }
+ t.Dump()
+ // panic("got to toolkit.SetValue")
+ return true
+}
+
func (t *Toolkit) Value() int {
if (DebugToolkit) {
log.Println("gui.Toolkit.Value() Enter")
@@ -93,3 +122,28 @@ func (t *Toolkit) Value() int {
log.Println("gui.Toolkit.Value() Could not find a ui element to get a value from")
return 0
}
+
+func (t *Toolkit) Dump() {
+ log.Println("gui.Toolkit.Dump()", t.Name, t.Width, t.Height)
+ if (t.uiBox != nil) {
+ log.Println("gui.Toolkit.Dump() uiBox =", t.uiBox)
+ }
+ if (t.uiButton != nil) {
+ log.Println("gui.Toolkit.Dump() uiButton =", t.uiButton)
+ }
+ if (t.uiWindow != nil) {
+ log.Println("gui.Toolkit.Dump() uiWindow =", t.uiWindow)
+ }
+ if (t.uiTab != nil) {
+ log.Println("gui.Toolkit.Dump() uiTab =", t.uiTab)
+ }
+ if (t.uiGroup != nil) {
+ log.Println("gui.Toolkit.Dump() uiGroup =", t.uiGroup)
+ }
+ if (t.uiSlider != nil) {
+ log.Println("gui.Toolkit.Dump() uiSlider =", t.uiSlider)
+ }
+ if (t.OnExit != nil) {
+ log.Println("gui.Toolkit.Dump() uiExit =", t.OnExit)
+ }
+}