package main import ( "embed" "go.wit.com/lib/debugger" "go.wit.com/log" "go.wit.com/gui" ) //go:embed resources/* var resToolkit embed.FS func main() { me = new(autoType) me.myGui = gui.New() me.myGui.InitEmbed(resToolkit) me.myGui.Default() me.autotypistWindow = me.myGui.NewWindow("autotypist: it types faster than you can.") me.mainbox = me.autotypistWindow.NewBox("bw hbox", true) vbox1 := me.mainbox.NewVerticalBox("BOX1") globalDisplayOptions(vbox1) docsBox(vbox1) if debugger.ArgDebug() { debuggerBox(vbox1) } // disable the interface while everything is scanned me.Disable() vbox2 := me.mainbox.NewVerticalBox("BOX2") globalBuildOptions(vbox2) // me.summary = submitPatchesBox(vbox2) globalResetOptions(me.mainbox) me.repos = makeRepoView() // parse config file and scan for .git repos me.repos.initRepoList() // reads in the State of all the repos // TODO: should not really be necessary directly after init() me.repos.View.ScanRepositories() // process everything on the command line // may exit here handleCmdLine() // setup the autoscan functions me.repos.View.RegisterHideFunction(hideFunction) me.repos.View.SetAutoScan(me.autoScanReposCB.Checked()) // processing is done. update the repo summary box // me.summary.Update() me.Enable() // intermittently scans the status indefinitly me.repos.View.Watchdog(func() { log.Info("In main()") // processing is done. update the repo summary box // me.summary.Update() }) }