2024-02-17 08:39:55 -06:00
|
|
|
package repolist
|
|
|
|
|
|
|
|
import (
|
2024-11-04 02:14:54 -06:00
|
|
|
"sync"
|
|
|
|
|
2024-02-17 08:39:55 -06:00
|
|
|
"go.wit.com/gui"
|
|
|
|
"go.wit.com/lib/gui/repostatus"
|
2024-11-28 18:27:38 -06:00
|
|
|
"go.wit.com/lib/protobuf/forgepb"
|
2024-02-17 08:39:55 -06:00
|
|
|
)
|
|
|
|
|
|
|
|
var me *RepoList
|
|
|
|
|
|
|
|
func (b *RepoList) Disable() {
|
|
|
|
b.reposbox.Disable()
|
|
|
|
}
|
|
|
|
|
|
|
|
func (b *RepoList) Enable() {
|
|
|
|
b.reposbox.Enable()
|
|
|
|
}
|
|
|
|
|
|
|
|
// this app's variables
|
|
|
|
type RepoList struct {
|
2024-11-04 02:14:54 -06:00
|
|
|
sync.RWMutex
|
|
|
|
|
2024-11-28 18:27:38 -06:00
|
|
|
// the main window and box
|
|
|
|
mainWindow *gui.Node
|
|
|
|
mainbox *gui.Node
|
|
|
|
|
2024-02-25 13:10:23 -06:00
|
|
|
onlyMe bool
|
|
|
|
goSrcPwd string
|
|
|
|
allrepos map[string]*RepoRow
|
|
|
|
viewName string
|
2024-03-01 21:35:42 -06:00
|
|
|
cfgfile string
|
2024-02-17 08:39:55 -06:00
|
|
|
|
2024-11-28 18:27:38 -06:00
|
|
|
forge *forgepb.Forge
|
|
|
|
|
2024-02-17 08:39:55 -06:00
|
|
|
reposbox *gui.Node
|
|
|
|
reposgrid *gui.Node
|
|
|
|
reposgroup *gui.Node
|
2024-02-18 10:49:52 -06:00
|
|
|
|
|
|
|
// put things here that can't be seen
|
2024-02-18 17:56:25 -06:00
|
|
|
blind *gui.Node
|
2024-02-19 19:43:21 -06:00
|
|
|
|
|
|
|
shownCount *gui.Node
|
2024-02-23 09:02:51 -06:00
|
|
|
hideFunction func(*RepoRow)
|
2024-02-20 18:55:50 -06:00
|
|
|
duration *gui.Node
|
2024-11-05 03:14:27 -06:00
|
|
|
|
2024-11-08 06:43:45 -06:00
|
|
|
rows []*RepoRow
|
2024-02-17 08:39:55 -06:00
|
|
|
}
|
|
|
|
|
2024-02-23 09:02:51 -06:00
|
|
|
type RepoRow struct {
|
2024-02-17 08:39:55 -06:00
|
|
|
hidden bool
|
|
|
|
lasttagrev string
|
2024-02-19 19:43:21 -06:00
|
|
|
// lasttag string
|
|
|
|
giturl string
|
2024-02-17 08:39:55 -06:00
|
|
|
|
|
|
|
pLabel *gui.Node // path label
|
|
|
|
|
2024-02-19 16:28:24 -06:00
|
|
|
targetV *gui.Node // the target version
|
|
|
|
lastTag *gui.Node // last tagged version label
|
|
|
|
currentName *gui.Node // current branch name
|
2024-02-19 14:42:34 -06:00
|
|
|
currentVersion *gui.Node // current branch version
|
2024-02-19 16:28:24 -06:00
|
|
|
gitState *gui.Node // git state (dirty or not?)
|
2024-02-29 21:57:33 -06:00
|
|
|
// goState *gui.Node // what is the state of the go.sum file
|
2024-02-17 08:39:55 -06:00
|
|
|
|
|
|
|
masterVersion *gui.Node // the master branch version
|
|
|
|
develVersion *gui.Node // the devel branch version
|
|
|
|
userVersion *gui.Node // the user branch version
|
|
|
|
|
|
|
|
endBox *gui.Node // a general box at the end of the row
|
|
|
|
statusButton *gui.Node // opens up the status window
|
|
|
|
diffButton *gui.Node // opens up the status window
|
|
|
|
|
2024-02-17 15:48:56 -06:00
|
|
|
Status *repostatus.RepoStatus
|
2024-02-17 08:39:55 -06:00
|
|
|
}
|