diff options
| author | Jeff Carr <[email protected]> | 2024-01-19 17:08:15 -0600 | 
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2024-01-19 17:08:15 -0600 | 
| commit | e1e453a574d7eac7b24c088a7c2075a519a4f306 (patch) | |
| tree | 0f3da927487460e94a7eca0de5254fd6509cef27 | |
| parent | 0e333cd78f4bdf69a77c2fcf0e17d5ceebff21e5 (diff) | |
hidden settings seem to workv0.0.1
Signed-off-by: Jeff Carr <[email protected]>
| -rw-r--r-- | Makefile | 3 | ||||
| -rw-r--r-- | choices.go | 19 | ||||
| -rw-r--r-- | go.mod | 6 | ||||
| -rw-r--r-- | go.sum | 8 | ||||
| -rw-r--r-- | main.go | 73 | ||||
| -rw-r--r-- | stateWindow.go | 15 | 
6 files changed, 61 insertions, 63 deletions
@@ -20,6 +20,9 @@ push:  	git commit -a  	git push +goimports: +	goimports -w *.go +  redomod:  	rm -f go.*  	goimports -w *.go @@ -8,13 +8,13 @@ import (  )  type choices struct { -	group *gui.Node // the group -	grid *gui.Node // the grid -	hello *gui.Node // the hello button +	group     *gui.Node // the group +	grid      *gui.Node // the grid +	hello     *gui.Node // the hello button  	computers *gui.Node -	colors *gui.Node +	colors    *gui.Node -	ol *gadgets.OneLiner +	socks *gadgets.OneLiner  }  // This initializes the first window and some widgets @@ -49,8 +49,13 @@ func newChoices(parent *gui.Node) *choices {  	c.grid.NewCheckbox("Checkers").SetProgName("CHECKERS") -	c.ol = gadgets.NewOneLiner(c.grid, "two for one") -	c.ol.SetValue("socks") +	c.socks = gadgets.NewOneLiner(c.grid, "two for one") +	c.socks.SetValue("socks")  	return c  } + +func (c *choices) SetSocks(s string) *choices { +	c.socks.SetValue(s) +	return c +} @@ -1,10 +1,10 @@ -module go.wit.com/apps/basicwindow +module go.wit.com/apps/gadgetwindow  go 1.21.4  require ( -	go.wit.com/gui v0.12.17 -	go.wit.com/lib/gadgets v0.12.11 +	go.wit.com/gui v0.12.18 +	go.wit.com/lib/gadgets v0.12.13  	go.wit.com/log v0.5.5  ) @@ -4,10 +4,10 @@ go.wit.com/dev/alexflint/scalar v1.2.1 h1:loXOcbVnd+8YeJRLey+XXidecBiedMDO00zQ26  go.wit.com/dev/alexflint/scalar v1.2.1/go.mod h1:+rYsfxqdI2cwA8kJ7GCMwWbNJvfvWUurOCXLiwdTtSs=  go.wit.com/dev/davecgh/spew v1.1.4 h1:C9hj/rjlUpdK+E6aroyLjCbS5MFcyNUOuP1ICLWdNek=  go.wit.com/dev/davecgh/spew v1.1.4/go.mod h1:sihvWmnQ/09FWplnEmozt90CCVqBtGuPXM811tgfhFA= -go.wit.com/gui v0.12.17 h1:O7fdI8dwDA8/TfkO0RN6LCK05dDiQRTE1Zvek1Imkrc= -go.wit.com/gui v0.12.17/go.mod h1:27+THr2a84GZ61KKUuN30WYnYoSsBewllUKc+fnWLto= -go.wit.com/lib/gadgets v0.12.11 h1:IgElPe2dFQq9xOQKtAx44Icfzf3tYEPP8NAhlXNUb2A= -go.wit.com/lib/gadgets v0.12.11/go.mod h1:Hb/vSiW22hPJjTVA1mShQ6HuqQ7dHGB95WLEfZlPO3M= +go.wit.com/gui v0.12.18 h1:gFVDaJFz/Su8JgUd9Oxnb3t+FS+bzy5WJSvGoKVGYZU= +go.wit.com/gui v0.12.18/go.mod h1:27+THr2a84GZ61KKUuN30WYnYoSsBewllUKc+fnWLto= +go.wit.com/lib/gadgets v0.12.13 h1:CEPUa+rH4VjmxtaWWSqvhgGEhpIjq8zuc01FIJ62xfA= +go.wit.com/lib/gadgets v0.12.13/go.mod h1:u+Syal5qdem7fEikOiEJdI+dO2zOybfa6vZ9ptF+bJ8=  go.wit.com/log v0.5.5 h1:bK3b94uVKgev4jB5wg06FnvCFBEapQICTSH2YW+CWr4=  go.wit.com/log v0.5.5/go.mod h1:BaJBfHFqcJSJLXGQ9RHi3XVhPgsStxSMZRlaRxW4kAo=  go.wit.com/widget v1.1.5 h1:jx5hJ2WLZJnCcvMuaLHegzpNlzwo+0kOkzsRkzRiB30= @@ -3,6 +3,7 @@ package main  import (  	"go.wit.com/gui" +	"go.wit.com/lib/debugger"  	"go.wit.com/lib/gadgets"  	"go.wit.com/log"  ) @@ -16,18 +17,18 @@ var mainWindow *gui.Node  // this is a basic window. the user can open and close it  var basicWindow *gadgets.BasicWindow -// the computers dropdown -var computers *gui.Node - -// the colors combobox -var colors *gui.Node +// the widget structure for both windows +var section1 *choices +var section2 *choices  func main() { -	myGui = gui.New().Default() +	myGui = gui.New() +	myGui.LoadToolkit("andlabs")  	// myGui.LoadToolkit("nocui") +	myGui.Default()  	helloworld() -	// basicWindow = makebasicWindow() +	basicWindow = makebasicWindow()  	// go will sit here until the window exits  	gui.Watchdog() @@ -37,54 +38,42 @@ func main() {  func helloworld() {  	mainWindow = myGui.NewWindow("hello world").SetProgName("BASEWIN1") -	box := mainWindow.NewBox("vbox", false) -	group := box.NewGroup("choices") -	grid := group.NewGrid("gridiron", 2, 1) -	grid.NewButton("hello", func() { -		log.Println("world") -	}) -	grid.NewButton("show basic window", func() { +	box := mainWindow.NewBox("hbox", true) +	section1 = newChoices(box) + +	group := box.NewGroup("interact") +	group.NewButton("show basic window", func() {  		basicWindow.Toggle()  	}) -	grid.NewLabel("a label") - -	computers = grid.NewDropdown().SetProgName("COMPUTERS") -	computers.AddText("Atari 500") -	computers.AddText("Beagleboard") -	computers.AddText("Unmatched Rev B") -	computers.AddText("asldjf") -	computers.AddText("asdjf") -	computers.AddText("a1jf") -	computers.AddText("jf") -	computers.SetText("Beagleboard") - -	colors = grid.NewCombobox().SetProgName("COLORS") -	colors.AddText("Cyan") -	colors.AddText("Magenta") -	colors.AddText("Yellow") -	colors.SetText("orange") -	grid.NewCheckbox("Checkers").SetProgName("CHECKERS") - -	queryGroup := box.NewGroup("interact") - -	queryGroup.NewButton("Which Computer?", func() { -		tmp := computers.String() +	group.NewButton("Which Computer?", func() { +		tmp := section1.computers.String()  		log.Println("computer =", tmp) -		for i, s := range computers.Strings() { +		for i, s := range section1.computers.Strings() {  			log.Println("has option", i, s)  		}  	}) -	queryGroup.NewButton("Which Color?", func() { -		tmp := colors.String() +	group.NewButton("Which Color?", func() { +		tmp := section1.colors.String()  		log.Println("color =", tmp)  	}) -	queryGroup.NewButton("Show apple", func() { +	group.NewButton("Show apple", func() {  		apple.Show()  	}) -	queryGroup.NewButton("Hide apple", func() { +	group.NewButton("Hide apple", func() {  		apple.Hide()  	}) +	group.NewButton("set socks", func() { +		section1.SetSocks("blue") +		section2.SetSocks("green") +	}) +	group.NewButton("show socks", func() { +		log.Info("main window socks  =", section1.socks.String()) +		log.Info("basic window socks =", section2.socks.String()) +	}) +	group.NewButton("debugger", func() { +		debugger.DebugWindow(myGui) +	})  } diff --git a/stateWindow.go b/stateWindow.go index 558a1e1..0155fbc 100644 --- a/stateWindow.go +++ b/stateWindow.go @@ -14,15 +14,17 @@ var apple *gui.Node  func makebasicWindow() *gadgets.BasicWindow {  	log.Warn("start basicWindow")  	basicWindow = gadgets.NewBasicWindow(myGui, "basic window test") -	basicWindow.Make() -	basicWindow.StandardClose()  	basicWindow.Custom = func() {  		log.Warn("got to close")  	} +	basicWindow.Make() +	basicWindow.StandardClose()  	box1 := basicWindow.Box() -	vbox := mainWindow.NewBox("vbox", false) -	group1 := vbox.NewGroup("choices") +	section2 = newChoices(box1) + +	vbox := box1.NewBox("vbox", false) +	group1 := vbox.NewGroup("controls").Horizontal() // Vertical()  	group1.NewButton("hide apple", func() {  		apple.Hide()  	}) @@ -30,15 +32,14 @@ func makebasicWindow() *gadgets.BasicWindow {  		apple.Show()  	})  	group1.NewButton("hide computers", func() { -		computers.Hide() +		section2.computers.Hide()  	})  	group1.NewButton("show computers", func() { -		computers.Show() +		section2.computers.Show()  	})  	apple = group1.NewButton("apple", func() {  		log.Info("is not a pear")  	}) -	newChoices(box1)  	return basicWindow  }  | 
