diff options
Diffstat (limited to 'treeInit.go')
| -rw-r--r-- | treeInit.go | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/treeInit.go b/treeInit.go new file mode 100644 index 0000000..78ff4fb --- /dev/null +++ b/treeInit.go @@ -0,0 +1,72 @@ +// Copyright 2017-2025 WIT.COM Inc. All rights reserved. +// Use of this source code is governed by the GPL 3.0 + +/* + DO NOT EDIT THIS FILE + + this file is the same for every GUI toolkit plugin + when you are making a new GUI toolkit plugin for + a specific toolkit, you just need to define these + functions. + + for example, in the "gocui" toolkit, the functions + below are what triggers the "gocui" GO package + to draw labels, buttons, windows, etc + + If you are starting out trying to make a new GUI toolkit, + all you have to do is copy this file over. Then + work on making these functions. addWidget(), setText(), etc. + + That's it! +*/ + +package main + +/* + This is reference code for toolkit developers + + This is how information is passed in GO back to the application + via the GO 'plugin' concept + + TODO: switch this to protocol buffers +*/ + +import ( + "go.wit.com/toolkits/tree" + "go.wit.com/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 { + initOnce.Do(initPlugin) + return me.myTree.PluginChannel() +} + +func initTree() *tree.TreeInfo { + t := tree.New() + t.PluginName = PLUGIN + t.Add = newAdd + t.SetTitle = setTitle + t.SetLabel = setLabel + t.SetText = setText + t.AddText = addText + + t.Enable = enableWidget + t.Disable = disableWidget + + t.SetChecked = setChecked + t.ToolkitClose = toolkitClose + t.ShowTable = showTable + + return t +} |
