new GUI codebase

This commit is contained in:
Jeff Carr 2025-09-09 05:11:23 -05:00
parent d5069b63f8
commit c3f5588365
3 changed files with 9 additions and 48 deletions

35
argv.go
View File

@ -41,41 +41,12 @@ and with the right geometries. TODO: restore the bash working paths
`
}
func deleteMatch() {
// f := forgedb.InitSimple()
fmt.Println("go.wit.com/lib/gui/repostatus todo: need to do this")
}
// prints help to STDERR // TODO: move everything below this to go-args
func (args) doBashHelp() {
if len(argv.BashAuto) < 2 {
fmt.Fprintf(os.Stderr, "something went wrong with the GO args autocomplete in %s\n", ARGNAME)
return
}
if argv.BashAuto[1] != "''" {
// if this is not blank, then the user has typed something
return
}
if argv.BashAuto[0] != ARGNAME {
// if this is not the name of the command, the user already started doing something
return
}
if argv.BashAuto[0] == ARGNAME {
me.pp.WriteHelp(os.Stderr)
return
}
fmt.Fprintln(os.Stderr, "")
fmt.Fprintln(os.Stderr, "something went wrong with the GO args package")
fmt.Fprintln(os.Stderr, "")
}
func (args) doBashAuto() {
argv.doBashHelp()
switch argv.BashAuto[0] {
func (a args) DoAutoComplete(argv []string) {
switch argv[0] {
case "dump":
fmt.Println("--terminals")
default:
if argv.BashAuto[0] == ARGNAME {
if argv[0] == ARGNAME {
// list the subcommands here
fmt.Println("--restore save dump dumpx")
}

16
main.go
View File

@ -7,11 +7,9 @@ package main
import (
"fmt"
"os"
"go.wit.com/dev/alexflint/arg"
"go.wit.com/gui"
"go.wit.com/lib/fhelp"
"go.wit.com/lib/gui/prep"
"go.wit.com/log"
)
@ -29,18 +27,10 @@ var configFile string = "/home/jcarr/.config/startxplacement.out"
func main() {
me = new(mainType)
gui.InitArg()
prep.Bash(ARGNAME, argv.DoAutoComplete) // todo: this line should be: prep.Bash(argv)
me.myGui = prep.Gui() // prepares the GUI package for go-args
me.pp = arg.MustParse(&argv)
if argv.Bash {
fhelp.DoBash(ARGNAME)
os.Exit(0)
}
if len(argv.BashAuto) != 0 {
argv.doBashAuto()
os.Exit(0)
}
if argv.DumpX != nil {
doDumpX()
}

View File

@ -5,13 +5,13 @@ package main
import (
"go.wit.com/dev/alexflint/arg"
"go.wit.com/gui"
"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 *gui.Node // the gui toolkit handle
pp *arg.Parser // for parsing the command line args. Yay to alexf lint!
myGui *prep.GuiPrep // the gui toolkit handle
}