diff options
| author | Jeff Carr <[email protected]> | 2023-03-12 08:47:16 -0500 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2023-03-12 08:47:16 -0500 |
| commit | 20f13a4b5be1a986e1085214f492a0afe6db322f (patch) | |
| tree | 35d633c45a36798126520269e13ae70dd70b5b20 /node.go | |
| parent | 49202eeafdad8e5780fefdad3d2f87fd4354725e (diff) | |
Squashed commit of the following:
commit 448abc843e2241bab6c399f7a836dccba1defc18
Author: Jeff Carr <[email protected]>
Date: Sun Mar 12 08:35:28 2023 -0500
this should probably be a new release now
Signed-off-by: Jeff Carr <[email protected]>
commit a4064f7a6c5ac67437768aa2bc67c75dafc91c4c
Author: Jeff Carr <[email protected]>
Date: Sat Mar 11 03:18:23 2023 -0600
able to work on add 'Box' and play with 'Image'
Signed-off-by: Jeff Carr <[email protected]>
commit 6e59573d85e82ecb005805f50711dddc2df50480
Author: Jeff Carr <[email protected]>
Date: Sat Mar 11 03:04:34 2023 -0600
rearrange widget debugging
Signed-off-by: Jeff Carr <[email protected]>
commit e0570de75c6eb1b4f49e541d9ef5d83ae4434d3d
Author: Jeff Carr <[email protected]>
Date: Sat Mar 11 02:29:20 2023 -0600
debugging is lots smarter
Signed-off-by: Jeff Carr <[email protected]>
commit ece32a1e43d91cd197d0a8497ad2f034c46126e1
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 21:38:23 2023 -0600
first pass on a node delete
Signed-off-by: Jeff Carr <[email protected]>
commit c91cb0eddb0f73f8dea9b21a16cd76c7e2c19a33
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 21:06:29 2023 -0600
can recreate window list
Signed-off-by: Jeff Carr <[email protected]>
commit 470f9dc26aefd3626b319264fe151aa48d4d5377
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 12:07:34 2023 -0600
attempt to ressurect mouse in the console plugin
Signed-off-by: Jeff Carr <[email protected]>
commit 747bb53e06dda458cc8cd77b665f4d9d07f5e925
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 10:47:14 2023 -0600
jesus. gocui actually builds and works again as a plugin
it didn't take too much to change it
Signed-off-by: Jeff Carr <[email protected]>
commit 9283c65c8e9b8d2630b251ad952b6b52caddb307
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 07:26:53 2023 -0600
show/hide/etc for window widgets
Signed-off-by: Jeff Carr <[email protected]>
commit 5724cd7ffd8595ae049a7c9c21cb2f1a993c4b76
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 06:40:36 2023 -0600
compiles and runs
Signed-off-by: Jeff Carr <[email protected]>
commit 44a5e69ce17cb506adfe24ca72cc86caa9ebcc70
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 05:57:15 2023 -0600
more debugging improvements
Signed-off-by: Jeff Carr <[email protected]>
commit b86f145f0252e7545b2e7fa78e1d5960cacb7bad
Author: Jeff Carr <[email protected]>
Date: Fri Mar 10 03:42:32 2023 -0600
set margin on tab's works
Signed-off-by: Jeff Carr <[email protected]>
commit d2218c08cf44acd5f017a8faa1439ee6d2fd46d5
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 16:26:21 2023 -0600
ignore all *.so files
Signed-off-by: Jeff Carr <[email protected]>
commit e21934fff3cfea30b04df01bf0714f6927aa78f4
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 16:25:15 2023 -0600
can't embed the toolkit/*.so files here
Signed-off-by: Jeff Carr <[email protected]>
commit f1e6c5fc9c8ca36db3ad6109d64612b6850fa856
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 16:21:14 2023 -0600
andlabs group widget has Show() and Hide()
Signed-off-by: Jeff Carr <[email protected]>
commit e8487504aa76ca99c4891b777585a428fda0ef62
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 16:07:56 2023 -0600
pass the node id into the plugin to use in channels
Signed-off-by: Jeff Carr <[email protected]>
commit 3667940a77af4e3855facb9247771d595477302f
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 14:20:21 2023 -0600
fix SetText() on Label
Signed-off-by: Jeff Carr <[email protected]>
commit 311d6be66db84b63fb7124df64e2e9be0f0b76a4
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 14:06:46 2023 -0600
still compiles and runs
Signed-off-by: Jeff Carr <[email protected]>
commit ee4e9b21ef59a97f902c6dae2a57ac7b3063fe3b
Author: Jeff Carr <[email protected]>
Date: Thu Mar 9 11:02:34 2023 -0600
compiles
Signed-off-by: Jeff Carr <[email protected]>
Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'node.go')
| -rw-r--r-- | node.go | 41 |
1 files changed, 39 insertions, 2 deletions
@@ -16,6 +16,12 @@ func (n *Node) New(title string, t toolkit.WidgetType, custom func()) *Node { // TODO: This should not be defined for each widget. This has to be stupid // or wait a second, is this where I send something to a channel? newN.widget.Custom = func() { + log(debugChange, "Trying to find Window Close. widget.Action =", newN.widget.Action) + log(debugChange, "Trying to find Window Close. widget.Type =", newN.widget.Type) + if (newN.widget.Type == toolkit.Window) { + log(debugChange, "Need to delete newN here") + n.Delete(newN) + } if (newN.Custom == nil) { log(debugChange, "newT.Custom() == nil. Not doing anything. SEND SOMETHING TO THE CHANNEL") return @@ -38,9 +44,40 @@ func addNode(title string) *Node { n := new(Node) n.Name = title n.widget.Name = title - n.id = Config.counter - Config.counter += 1 + n.widget.SetId(n.id) + log(debugNode, "addNode = widget setid =", n.id) + Config.counter += 1 return n } + +func (n *Node) Parent() *Node { + return n.parent +} + +func (n *Node) Window() *Node { + return n.parent +} + +func (n *Node) Append(child *Node) { + n.children = append(n.children, child) + if (debugNode) { + log(debugNode, "child node:") + child.Dump() + log(debugNode, "parent node:") + n.Dump() + } +} + +func (n *Node) Delete(d *Node) { + for i, child := range n.children { + log(debugNode, "\t", i, child.id, child.Width, child.Height, child.Name) + if (child.id == d.id) { + log(debugNode, "\t\t Deleting this") + n.children = append(n.children[:i], n.children[i+1:]...) + return + } + } + log(debugError, "did not find node to delete", d.id, d.Width, d.Height, d.Name) +} |
