From d568d5dbe4a39235cd481bc74d1e65ee7ba88df7 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Thu, 30 Jan 2025 13:44:22 -0600 Subject: [PATCH] make the buttons work --- windowMerge.go | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/windowMerge.go b/windowMerge.go index ee10586..a407995 100644 --- a/windowMerge.go +++ b/windowMerge.go @@ -16,13 +16,10 @@ type repoMergeWindow struct { mainBranchVersion *gadgets.OneLiner // the primary branch version develBranchVersion *gadgets.OneLiner // the devel branch version userBranchVersion *gadgets.OneLiner // the user branch version - - currentVersion *gadgets.OneLiner // the devel branch version - currentBranch *gadgets.OneLiner // the user branch version - - //shelf *gui.Node // the first box in the stack, set as horizontal - //grid *gui.Node // the list of available patches - //setgrid *gui.Node // the list of each patchset + currentVersion *gadgets.OneLiner // the devel branch version + currentBranch *gadgets.OneLiner // the user branch version + mergeD *gui.Node // the merge button + mergeM *gui.Node // the merge button } // todo: autogenerate these or make them standared 'gui' package functions @@ -70,6 +67,18 @@ func (w *repoMergeWindow) Update() { w.currentBranch.SetText(w.repo.GetCurrentBranchName()) w.currentVersion.SetText(w.repo.GetCurrentVersion()) + + if w.repo.GetCurrentBranchName() == w.repo.GetDevelBranchName() { + w.mergeD.Enable() + } else { + w.mergeD.Disable() + } + + if w.repo.GetCurrentBranchName() == w.repo.GetMasterBranchName() { + w.mergeM.Enable() + } else { + w.mergeM.Disable() + } } func (rs *RepoStatus) MakeRepoMergeWindow(repo *gitpb.Repo) *repoMergeWindow { @@ -106,7 +115,7 @@ func (rs *RepoStatus) MakeRepoMergeWindow(repo *gitpb.Repo) *repoMergeWindow { w.repo.Reload() w.Update() }) - grid.NewButton("merge to devel", func() { + w.mergeD = grid.NewButton("merge to devel", func() { log.Info("repo:", repo.GetGoPath()) if result, err := repo.MergeToDevel(); err == nil { log.Warn("THINGS SEEM OK", repo.GetFullPath()) @@ -135,7 +144,7 @@ func (rs *RepoStatus) MakeRepoMergeWindow(repo *gitpb.Repo) *repoMergeWindow { w.repo.Reload() w.Update() }) - grid.NewButton("merge to master", func() { + w.mergeM = grid.NewButton("merge to master", func() { log.Info("repo:", repo.GetGoPath()) if result, err := repo.MergeToMaster(); err == nil { log.Warn("THINGS SEEM OK", repo.GetFullPath())