diff --git a/doGui.go b/doGui.go index 1692a66..8e562ee 100644 --- a/doGui.go +++ b/doGui.go @@ -8,20 +8,18 @@ import ( "path/filepath" "go.wit.com/gui" - "go.wit.com/lib/debugger" "go.wit.com/lib/gadgets" "go.wit.com/log" ) func debug() { log.Info("cmd line --debugger == true") - go func() { - log.Sleep(3) - log.Info("cmd line --debugger == true") - log.Info("cmd line --debugger == true") - log.Info("cmd line --debugger == true") - log.Info("cmd line --debugger == true") - debugger.DebugWindow() + func() { + for { + log.Sleep(30) + log.Info("cmd line --debugger == true") + // debugger.DebugWindow() + } }() } @@ -35,10 +33,6 @@ func doGui() { me.myGui.SetAppDefaultPlugin(me.forge.Config.DefaultGui) // sets the default GUI plugin to use me.myGui.Default() - // debug() - - me.patchWin = new(patchesWindow) - me.mainWindow = gadgets.RawBasicWindow("Forge: (this kinda works sometimes)") me.mainWindow.Make() me.mainWindow.Show() @@ -60,16 +54,10 @@ func doGui() { vbox2 := me.mainbox.NewVerticalBox("BOX2") globalBuildOptions(vbox2) - me.repos = makeRepoView() - me.Enable() + // sits here forever + debug() - // intermittently scans the status indefinitly - me.repos.View.Watchdog(func() { - log.Info("Watchdog in doGui()") - // processing is done. update the repo summary box - // me.summary.Update() - }) } func globalBuildOptions(vbox *gui.Node) { @@ -138,15 +126,30 @@ func globalBuildOptions(vbox *gui.Node) { me.autoCreateBranches = grid.NewCheckbox("create if missing").SetChecked(true) grid.NextRow() + var reposWin *repoWindow + grid.NewButton("Repo Window", func() { - if me.repos.Hidden() { - me.repos.Show() - } else { - me.repos.Hide() + if reposWin != nil { + if reposWin.Hidden() { + reposWin.Show() + } else { + reposWin.Hide() + } + return } + reposWin = makeRepoView() + reposWin.Show() }) + + var patchWin *patchesWindow + grid.NewButton("Patches Window", func() { - me.patchWin.once.Do(me.patchWin.initWindow) - me.patchWin.Toggle() + if patchWin != nil { + patchWin.Toggle() + return + } + patchWin = new(patchesWindow) + patchWin.initWindow() + patchWin.Show() }) } diff --git a/structs.go b/structs.go index d8e7833..c943f0a 100644 --- a/structs.go +++ b/structs.go @@ -29,8 +29,8 @@ type mainType struct { urlbase string // base URL // our view of the repositories - repos *repoWindow - patchWin *patchesWindow + // repos *repoWindow + // patchWin *patchesWindow mainWindow *gadgets.BasicWindow diff --git a/windowPatchesSubmit.go b/windowPatchesSubmit.go index 1aeea11..dd926c0 100644 --- a/windowPatchesSubmit.go +++ b/windowPatchesSubmit.go @@ -83,7 +83,7 @@ func (r *patchesWindow) submitPatchesBox(box *gui.Node) *patchSummary { return } // line := "somedate " + s.reason.String() + " Author: me" + pset.GitAuthorEmail - me.patchWin.addPatchsetNew(pset) + r.addPatchsetNew(pset) }) s.grid.NewButton("Get Patchsets", func() { if psets, err := me.forge.GetPatchesets(); err != nil { diff --git a/windowRepos.go b/windowRepos.go index 158f887..810651d 100644 --- a/windowRepos.go +++ b/windowRepos.go @@ -1,11 +1,8 @@ package main import ( - "os" - "go.wit.com/lib/gadgets" "go.wit.com/lib/gui/repolist" - "go.wit.com/lib/protobuf/gitpb" "go.wit.com/log" "go.wit.com/gui" @@ -43,9 +40,6 @@ func (r *repoWindow) Enable() { // you can only have one of these func makeRepoView() *repoWindow { - if me.repos != nil { - return me.repos - } r := new(repoWindow) r.win = gadgets.RawBasicWindow("All git repositories in ~/go/src/") r.win.Make() @@ -76,8 +70,6 @@ func (r *repoWindow) repoMenu() *gui.Node { hbox.Vertical() box2 := hbox.Box().Horizontal() - /* - */ dirty := box2.NewCheckbox("dirty") dirty.Custom = func() { @@ -92,65 +84,72 @@ func (r *repoWindow) repoMenu() *gui.Node { me.forge.PrintHumanTable(me.found) return } - if !r.mergeAllUserToDevel() { - return - } + /* + if !r.mergeAllUserToDevel() { + return + } + */ }) box2.NewButton("test master merge", func() { r.Disable() - r.mergeAllDevelToMain() + // r.mergeAllDevelToMain() r.Enable() }) - box2.NewButton("show apps", func() { - loop := me.repos.View.ReposSortByName() - for loop.Scan() { - var repo *repolist.RepoRow - repo = loop.Repo() - if repo.IsBinary() { - // log.Info(repo.Status.Path(), "compile here. Show()") - repo.Show() - } else { - // log.Info(repo.Status.Path(), "library here. Hide()") - repo.Hide() + /* + box2.NewButton("show apps", func() { + loop := me.repos.View.ReposSortByName() + for loop.Scan() { + var repo *repolist.RepoRow + repo = loop.Repo() + if repo.IsBinary() { + // log.Info(repo.Status.Path(), "compile here. Show()") + repo.Show() + } else { + // log.Info(repo.Status.Path(), "library here. Hide()") + repo.Hide() + } } - } - }) - box2.NewButton("ConfigSave()", func() { + }) + */ + box2.NewButton("forge ConfigSave()", func() { me.forge.ConfigSave() }) - box2.NewButton("Table()", func() { - me.found = new(gitpb.Repos) - loop := me.forge.Repos.All() - for loop.Scan() { - repo := loop.Next() - me.found.AppendByGoPath(repo) - } - me.forge.PrintHumanTable(me.found) - }) - box2.NewButton("Prep for release()", func() { - r.Disable() - defer r.Enable() - if IsAnythingDirty() { - log.Info("You can't apply patches when repos are dirty") + /* + box2.NewButton("Table()", func() { + me.found = new(gitpb.Repos) + loop := me.forge.Repos.All() + for loop.Scan() { + repo := loop.Next() + me.found.AppendByGoPath(repo) + } me.forge.PrintHumanTable(me.found) - return - } - if !r.mergeAllUserToDevel() { - return - } - if !r.mergeAllDevelToMain() { - return - } - doAllCheckoutMaster() - os.Exit(0) + }) + box2.NewButton("Prep for release()", func() { + r.Disable() + defer r.Enable() + if IsAnythingDirty() { + log.Info("You can't apply patches when repos are dirty") + me.forge.PrintHumanTable(me.found) + return + } + if !r.mergeAllUserToDevel() { + return + } + if !r.mergeAllDevelToMain() { + return + } + doAllCheckoutMaster() + os.Exit(0) - }) + }) + */ return box2 } +/* func (r *repoWindow) mergeAllDevelToMain() bool { var count int log.Info("merge all here") @@ -247,3 +246,4 @@ func (r *repoWindow) mergeAllUserToDevel() bool { log.Warn("EVERYTHING WORKED") return true } +*/