summaryrefslogtreecommitdiff
path: root/nocui/tree.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2024-01-17 21:31:49 -0600
committerJeff Carr <[email protected]>2024-01-17 21:31:49 -0600
commit841e6252c95244f0ee7faf2c01d33f69a8ab483a (patch)
treeef400228622b87611168db2227269ba7fd56625d /nocui/tree.go
parentba95c13799740b5f55541fc5e8ab9f1d34f7e421 (diff)
common tree package for toolkitsv0.12.4
This update provides *lots* of toolkit updates. This will allow the next step of debugging the gocui toolkit to make it work again. There are new common routines for handling the plugin channel communication Signed-off-by: Jeff Carr <[email protected]>
Diffstat (limited to 'nocui/tree.go')
-rw-r--r--nocui/tree.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/nocui/tree.go b/nocui/tree.go
new file mode 100644
index 0000000..784e923
--- /dev/null
+++ b/nocui/tree.go
@@ -0,0 +1,24 @@
+package main
+
+/*
+ This is reference code for toolkit developers
+*/
+
+import (
+ "go.wit.com/gui/widget"
+)
+
+// Other goroutines must use this to access the GUI
+//
+// You can not acess / process the GUI thread directly from
+// other goroutines. This is due to the nature of how
+// Linux, MacOS and Windows work (they all work differently. suprise. surprise.)
+//
+// this sets the channel to send user events back from the plugin
+func Callback(guiCallback chan widget.Action) {
+ me.myTree.Callback(guiCallback)
+}
+
+func PluginChannel() chan widget.Action {
+ return me.myTree.PluginChannel()
+}