package main import ( "os" "go.wit.com/lib/gui/repolist" ) // like tcl/tk, use ENV variables to set display preferences func hideFunction(r *repolist.RepoRow) { /* if r.GoPath() == "go.wit.com/dev/alexflint/arg" { log.Info("found autoHideReleased() =", me.autoHideReleased.Checked()) log.Info("found alexflint/arg IsReleased() =", r.Status.IsReleased()) } */ // always show dirty repos if r.Status.IsDirty() { r.Show() return } // always show repos that have not been merged ? // if r.GoState() == "merge to devel" { // r.Show() // return // } // hide read-only repos if os.Getenv("AUTOTYPIST_READONLY") == "hide" { if r.Status.ReadOnly() { // log.Info(r.Name(), "hiding read-only repo") r.Hide() return } else { // log.Info(r.Name(), "not hiding read-only repo") } } // show repos with mismatched mode // this means, if you are in "devel" mode, show all the repos that // might be stuck on the wrong branch, like 'master' or '' if os.Getenv("AUTOTYPIST_MODE") != "" { if !r.Status.IsCorrectMode(os.Getenv("AUTOTYPIST_MODE")) { r.Show() return } } /* if me.autoHideReleased.Checked() { if r.Status.IsReleased() { r.Hide() return } } */ // show everything else. often this will be "unconforming" repos // if you what those repos ignored, add these to the config file // as read-only=true r.Show() } /* func showHideRepos(repo *repolist.RepoRow) { if repo.GoPath() == "go.wit.com/dev/alexflint/arg" { log.Info("found autoHideReleased() =", me.autoHideReleased.Checked()) log.Info("found alexflint/arg IsReleased() =", repo.Status.IsReleased()) } if me.autoHideReleased.Checked() { if repo.Status.IsReleased() { repo.Hide() return } } repo.Show() } */