diff options
| author | Jeff Carr <[email protected]> | 2023-03-01 11:35:36 -0600 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2023-03-01 11:35:36 -0600 |
| commit | 8dbf5a09097b7868e9218bf98716c57eac998a10 (patch) | |
| tree | ab3bdfeaf5a59a55de9d2a6661d2d824090491e5 /toolkit/andlabs/button.go | |
| parent | f3bb68396afa7452ecf1c8d4744c825a9d81057c (diff) | |
lots cleaner code between the pluginv0.6.1
Queue() around SetText is helping userspace crashing
merge forceDump(bool) into Dump()
debugging output configuration is pretty clean
keep cutting down duplicate things
--gui-verbose flag works
make label "standard" code
add debug.FreeOSMemory()
move the GO language internals to display in the GUI
update push to do tags and go to github.com/wit-go/
remove the other license file
it might be confusing golang.org and github
proper WidgetType
added a Quit() button
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'toolkit/andlabs/button.go')
| -rw-r--r-- | toolkit/andlabs/button.go | 54 |
1 files changed, 42 insertions, 12 deletions
diff --git a/toolkit/andlabs/button.go b/toolkit/andlabs/button.go index 9933e1f..deb34fa 100644 --- a/toolkit/andlabs/button.go +++ b/toolkit/andlabs/button.go @@ -7,7 +7,7 @@ import ( "git.wit.org/wit/gui/toolkit" ) -func NewButton(parentW *toolkit.Widget, w *toolkit.Widget) { +func newButton(parentW *toolkit.Widget, w *toolkit.Widget) { var t, newt *andlabsT var b *ui.Button log(debugToolkit, "gui.andlabs.NewButton()", w.Name) @@ -25,19 +25,11 @@ func NewButton(parentW *toolkit.Widget, w *toolkit.Widget) { b = ui.NewButton(w.Name) newt.uiButton = b + newt.tw = w + newt.parent = t b.OnClicked(func(*ui.Button) { - log(debugChange, "TODO: SHOULD LEAVE Button click HERE VIA channels. button name =", w.Name) - log(debugChange, "FOUND WIDGET =", w) - if (w.Custom == nil) { - log(debugChange, "WIDGET DOES NOT have Custom()") - log(debugChange, "TODO: NOTHING TO DO button name =", w.Name) - return - } - // t.Dump() - // newt.Dump() - log(debugChange, "Running w.Custom()") - w.Custom() + newt.commonChange(newt.tw) }) log(debugToolkit, "gui.Toolbox.NewButton() about to append to Box parent t:", w.Name) @@ -55,3 +47,41 @@ func NewButton(parentW *toolkit.Widget, w *toolkit.Widget) { mapWidgetsToolkits(w, newt) } + +func doButton(p *toolkit.Widget, c *toolkit.Widget) { + if broken(c) { + return + } + if (c.Action == "New") { + newButton(p, c) + return + } + ct := mapToolkits[c] + if (ct == nil) { + log(true, "Trying to do something on a widget that doesn't work or doesn't exist or something", c) + return + } + if ct.broken() { + log(true, "Button() ct.broken", ct) + return + } + if (ct.uiButton == nil) { + log(true, "Button() uiButton == nil", ct) + return + } + log(true, "Going to attempt:", c.Action) + switch c.Action { + case "Enable": + ct.uiButton.Enable() + case "Disable": + ct.uiButton.Disable() + case "Show": + ct.uiButton.Show() + case "Hide": + ct.uiButton.Hide() + case "Set": + ct.uiButton.SetText(c.S) + default: + log(true, "Can't do", c.Action, "to a Button") + } +} |
