63 lines
1.1 KiB
Go
63 lines
1.1 KiB
Go
|
package main
|
||
|
|
||
|
/*
|
||
|
This is reference code for toolkit developers
|
||
|
|
||
|
The 'nocui' is a bare minimum toolkit. It's all you need
|
||
|
to interact with the GUI
|
||
|
*/
|
||
|
|
||
|
import (
|
||
|
"go.wit.com/log"
|
||
|
"go.wit.com/toolkits/tree"
|
||
|
"fyne.io/fyne/v2/app"
|
||
|
"fyne.io/fyne/v2/container"
|
||
|
"fyne.io/fyne/v2/widget"
|
||
|
)
|
||
|
|
||
|
func init() {
|
||
|
log.Log(INFO, "Init()")
|
||
|
|
||
|
me.myTree = tree.New()
|
||
|
me.myTree.PluginName = "nocui"
|
||
|
// me.myTree.ActionFromChannel = doAction
|
||
|
|
||
|
me.myTree.NodeAction = newaction
|
||
|
me.myTree.Add = Add
|
||
|
me.myTree.SetTitle = SetTitle
|
||
|
me.myTree.SetLabel = SetLabel
|
||
|
me.myTree.SetText = SetText
|
||
|
me.myTree.AddText = AddText
|
||
|
|
||
|
me.exit = false
|
||
|
|
||
|
log.Log(INFO, "Init() END")
|
||
|
|
||
|
showOptions()
|
||
|
|
||
|
go simpleStdin()
|
||
|
fynetest()
|
||
|
}
|
||
|
|
||
|
// this must be defined for plugin's, but is never run
|
||
|
// if you build this as a non-plugin, this will run
|
||
|
func main() {
|
||
|
fynetest()
|
||
|
}
|
||
|
|
||
|
|
||
|
func fynetest() {
|
||
|
a := app.New()
|
||
|
w := a.NewWindow("Hello")
|
||
|
|
||
|
hello := widget.NewLabel("Hello Fyne!")
|
||
|
w.SetContent(container.NewVBox(
|
||
|
hello,
|
||
|
widget.NewButton("Hi!", func() {
|
||
|
hello.SetText("Welcome :)")
|
||
|
}),
|
||
|
))
|
||
|
|
||
|
w.ShowAndRun()
|
||
|
}
|