updates for new GUI codebase
This commit is contained in:
parent
c717021028
commit
4fee86a80f
18
argv.go
18
argv.go
|
@ -1,12 +1,5 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
|
||||||
"os"
|
|
||||||
|
|
||||||
"go.wit.com/dev/alexflint/arg"
|
|
||||||
"go.wit.com/gui"
|
|
||||||
)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
this parses the command line arguements
|
this parses the command line arguements
|
||||||
this enables command line options from other packages like 'gui' and 'log'
|
this enables command line options from other packages like 'gui' and 'log'
|
||||||
|
@ -24,17 +17,6 @@ This basicwindow example demonstrates multiple windows
|
||||||
`
|
`
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
|
||||||
gui.InitArg()
|
|
||||||
pp := arg.MustParse(&argv)
|
|
||||||
|
|
||||||
// for very new users or users unfamilar with the command line, this may help them
|
|
||||||
if argv.Demo == "version" || argv.Demo == "help" || argv.Demo == "?" {
|
|
||||||
pp.WriteHelp(os.Stdout)
|
|
||||||
os.Exit(0)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (args) Version() string {
|
func (args) Version() string {
|
||||||
return "basicwindow " + VERSION
|
return "basicwindow " + VERSION
|
||||||
}
|
}
|
||||||
|
|
25
main.go
25
main.go
|
@ -1,17 +1,18 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"os"
|
||||||
|
|
||||||
|
"go.wit.com/dev/alexflint/arg"
|
||||||
"go.wit.com/gui"
|
"go.wit.com/gui"
|
||||||
"go.wit.com/lib/gadgets"
|
"go.wit.com/lib/gadgets"
|
||||||
|
"go.wit.com/lib/gui/prep"
|
||||||
"go.wit.com/log"
|
"go.wit.com/log"
|
||||||
)
|
)
|
||||||
|
|
||||||
// sent via -ldflags
|
// sent via -ldflags
|
||||||
var VERSION string
|
var VERSION string
|
||||||
|
|
||||||
// This is the beginning of the binary tree of widgets
|
|
||||||
var myGui *gui.Node
|
|
||||||
|
|
||||||
// this is the primary window. If you close it, the program will exit
|
// this is the primary window. If you close it, the program will exit
|
||||||
var mainWindow *gui.Node
|
var mainWindow *gui.Node
|
||||||
|
|
||||||
|
@ -25,20 +26,28 @@ var computers *gui.Node
|
||||||
var colors *gui.Node
|
var colors *gui.Node
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
myGui = gui.New()
|
me := new(mainType)
|
||||||
myGui.Default()
|
me.myGui = prep.Gui() // prepares the GUI package for go-args
|
||||||
myGui.LoadToolkit("gocui")
|
me.pp = arg.MustParse(&argv)
|
||||||
|
|
||||||
|
// for very new users or users unfamilar with the command line, this may help them
|
||||||
|
if argv.Demo == "version" || argv.Demo == "help" || argv.Demo == "?" {
|
||||||
|
me.pp.WriteHelp(os.Stdout)
|
||||||
|
os.Exit(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
me.myGui.Start() // loads the GUI toolkit (GO Plugins)
|
||||||
|
|
||||||
helloworld()
|
helloworld()
|
||||||
basicWindow = makebasicWindow()
|
basicWindow = makebasicWindow()
|
||||||
|
|
||||||
// go will sit here until the window exits
|
// use this or make a loop to do something
|
||||||
gui.Watchdog()
|
gui.Watchdog()
|
||||||
}
|
}
|
||||||
|
|
||||||
// This initializes the first window and some widgets
|
// This initializes the first window and some widgets
|
||||||
func helloworld() {
|
func helloworld() {
|
||||||
mainWindow = myGui.NewWindow("primary helloworld window").SetProgName("BASEWIN1")
|
mainWindow = gui.RawWindow("primary helloworld window").SetProgName("BASEWIN1")
|
||||||
|
|
||||||
box := mainWindow.NewBox("vbox", false)
|
box := mainWindow.NewBox("vbox", false)
|
||||||
group := box.NewGroup("choices")
|
group := box.NewGroup("choices")
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
// Copyright 2017-2025 WIT.COM Inc. All rights reserved.
|
||||||
|
// Use of this source code is governed by the GPL 3.0
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"go.wit.com/dev/alexflint/arg"
|
||||||
|
"go.wit.com/lib/gui/prep"
|
||||||
|
)
|
||||||
|
|
||||||
|
var me *mainType
|
||||||
|
|
||||||
|
// this app's variables
|
||||||
|
type mainType struct {
|
||||||
|
pp *arg.Parser // for parsing the command line args. Yay to alexf lint!
|
||||||
|
myGui *prep.GuiPrep // the gui toolkit handle
|
||||||
|
}
|
Loading…
Reference in New Issue