maybe the interface works again?

This commit is contained in:
Jeff Carr 2025-01-07 19:30:25 -06:00
parent 9bc0e8a398
commit 51db8c4f0c
1 changed files with 32 additions and 26 deletions

View File

@ -65,6 +65,35 @@ func makeRepoView() *repoWindow {
return r return r
} }
func (r *repoWindow) reInitForge() {
// re-read everything
me.forge = forgepb.Init()
me.found = new(gitpb.Repos)
me.repos = makeRepoView()
me.repos.Show()
// update the protobuf pointers
loop := me.forge.Repos.All()
for loop.Scan() {
repo := loop.Next()
vrepo := me.repos.View.FindByPath(repo.GetGoPath())
if vrepo != nil {
vrepo.UpdatePb(repo)
}
}
// now update the gui
vloop := me.repos.View.ReposSortByName()
for vloop.Scan() {
var repo *repolist.RepoRow
repo = vloop.Repo()
repo.NewScan()
}
i, s := me.repos.View.ScanRepositories()
log.Info("re-scanning done", i, "repos in", s)
}
func (r *repoWindow) repoMenu() *gui.Node { func (r *repoWindow) repoMenu() *gui.Node {
// reposbox.SetExpand(false) // reposbox.SetExpand(false)
group1 := r.box.NewGroup("Filter:") group1 := r.box.NewGroup("Filter:")
@ -98,29 +127,7 @@ func (r *repoWindow) repoMenu() *gui.Node {
box2.NewButton("test master merge", func() { box2.NewButton("test master merge", func() {
r.Disable() r.Disable()
r.mergeAllDevelToMain() r.mergeAllDevelToMain()
// re-read everything r.reInitForge()
me.forge = forgepb.Init()
me.found = new(gitpb.Repos)
me.repos = makeRepoView()
me.repos.Show()
// update the protobuf pointers
loop := me.forge.Repos.All()
for loop.Scan() {
repo := loop.Next()
vrepo := me.repos.View.FindByPath(repo.GetGoPath())
if vrepo != nil {
vrepo.UpdatePb(repo)
}
}
// now update the gui
vloop := me.repos.View.ReposSortByName()
for vloop.Scan() {
var repo *repolist.RepoRow
repo = vloop.Repo()
repo.NewScan()
}
r.Enable() r.Enable()
}) })
@ -138,10 +145,9 @@ func (r *repoWindow) repoMenu() *gui.Node {
} }
} }
}) })
box2.NewButton("scan now", func() { box2.NewButton("re-init forge", func() {
log.Info("re-scanning now") log.Info("re-scanning now")
i, s := me.repos.View.ScanRepositories() r.reInitForge()
log.Info("re-scanning done", i, "repos in", s)
}) })
return box2 return box2