diff options
| author | Jeff Carr <[email protected]> | 2023-03-03 14:41:38 -0600 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2023-03-03 14:41:38 -0600 |
| commit | 49202eeafdad8e5780fefdad3d2f87fd4354725e (patch) | |
| tree | 5d749b5d4835c7a0395bd1f87b5d2d1d91b14a08 /toolkit/andlabs/append.go | |
| parent | 80317ec89c94beadcbf3775f84c6010b5ceef302 (diff) | |
release as v0.6.5v0.6.5
good standard release
really clean interaction to plugin
really clean debug flags implementation
common doAppend() idea, but it probably won't work
re-implement combobox. this code base almost doesn't suck
slider & spinner set values now
tab set margin works
convert dropdown to Send()
lots of other changes to try to implement single line Entry()
I guess use golang file names even though internalally the go developers
use underscore chars in the actual go sources.
Maybe there is a reason for that?
go channel debug window does something
make a debug window for channels. add sample icons
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'toolkit/andlabs/append.go')
| -rw-r--r-- | toolkit/andlabs/append.go | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/toolkit/andlabs/append.go b/toolkit/andlabs/append.go new file mode 100644 index 0000000..811ffbc --- /dev/null +++ b/toolkit/andlabs/append.go @@ -0,0 +1,103 @@ +package main + +import ( + "git.wit.org/wit/gui/toolkit" + + "github.com/andlabs/ui" + _ "github.com/andlabs/ui/winmanifest" +) + +// make new Group here +func (t *andlabsT) doAppend(newt *andlabsT, c *ui.Control) { + + if (newt.tw != nil) { + if (newt.tw.Type == toolkit.Grid) { + log(true, "doAppend() going to attempt uiGrid") + // hack to add shit to a grid + button1 := ui.NewButton("a(0,2)") + newt.uiGrid.Append(button1, + 0, 2, 1, 1, + false, ui.AlignFill, false, ui.AlignFill) + button2 := ui.NewButton("a(1,2)") + newt.uiGrid.Append(button2, + 1, 2, 1, 1, + false, ui.AlignFill, false, ui.AlignFill) + + if (t.uiBox != nil) { + log(true, "doAppend() on uiGrid to a uiBox") + if (newt.Name == "output") { + t.uiBox.Append(newt.uiGrid, true) + } else { + t.uiBox.Append(newt.uiGrid, stretchy) + } + return + } + log(true, "doAppend() on uiGrid failed") + return + } + } else { + log(true, "doAppend() newt.tw == nil ERROR on newt.Name =", newt.Name) + } + + // hack to pass a group + if (c == nil) { + log(true, "attempting to doAppend() on a uiGroup") + if (t.uiBox != nil) { + if (newt.Name == "output") { + t.uiBox.Append(newt.uiGroup, true) + } else { + t.uiBox.Append(newt.uiGroup, stretchy) + } + return + } + + if (t.uiWindow != nil) { + log(true, "This is a raw window without a box. probably make a box here and add the group to that") + t.Dump(true) + newt.Dump(true) + t.uiBox = ui.NewHorizontalBox() + t.uiWindow.SetChild(t.uiBox) + log(true, "tried to make a box", t.uiBox) + if (newt.Name == "output") { + log(true, "tried to t.uiBox.Append(*c, true)") + if (t.uiBox == nil) { + log(true, "tried to t.uiBox.Append(*c, true)") + } + t.uiBox.Append(newt.uiGroup, true) + } else { + log(true, "tried to t.uiBox.Append(*c, stretchy)") + t.uiBox.Append(newt.uiGroup, stretchy) + } + return + } + + log(debugError, "NewGroup() node.UiBox == nil. I can't add a range UI element without a place to put it") + log(debugError, "probably could just make a box here?") + exit("internal wit/gui error") + } + if (t.uiBox != nil) { + // TODO: temporary hack to make the output textbox 'fullscreen' + if (newt.Name == "output") { + t.uiBox.Append(*c, true) + } else { + t.uiBox.Append(*c, stretchy) + } + return + } + if (t.uiWindow != nil) { + log(true, "This is a raw window without a box. probably make a box here and add the group to that") + t.uiBox = ui.NewHorizontalBox() + t.uiWindow.SetChild(t.uiBox) + log(true, "tried to make a box") + if (newt.Name == "output") { + t.uiBox.Append(*c, true) + } else { + t.uiBox.Append(*c, stretchy) + } + return + } + + log(debugError, "NewGroup() node.UiBox == nil. I can't add a range UI element without a place to put it") + log(debugError, "probably could just make a box here?") + exit("internal wit/gui error") +} |
