summaryrefslogtreecommitdiff
path: root/windowRepos.go
diff options
context:
space:
mode:
Diffstat (limited to 'windowRepos.go')
-rw-r--r--windowRepos.go58
1 files changed, 32 insertions, 26 deletions
diff --git a/windowRepos.go b/windowRepos.go
index 97e5ade..bc84893 100644
--- a/windowRepos.go
+++ b/windowRepos.go
@@ -65,6 +65,35 @@ func makeRepoView() *repoWindow {
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 {
// reposbox.SetExpand(false)
group1 := r.box.NewGroup("Filter:")
@@ -98,29 +127,7 @@ func (r *repoWindow) repoMenu() *gui.Node {
box2.NewButton("test master merge", func() {
r.Disable()
r.mergeAllDevelToMain()
- // 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()
- }
+ r.reInitForge()
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")
- i, s := me.repos.View.ScanRepositories()
- log.Info("re-scanning done", i, "repos in", s)
+ r.reInitForge()
})
return box2