summaryrefslogtreecommitdiff
path: root/structs.go
blob: 552159b277ad729aa80065fb3a4e2c5ba838e1f0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
// watch all your go git repos
package main

import (
	"go.wit.com/gui"
	"go.wit.com/lib/gadgets"
	"go.wit.com/lib/gui/repostatus"
)

// the main window nodes
var reposwin *gadgets.BasicWindow
var reposbox *gui.Node
var reposgrid *gui.Node
var reposgroup *gui.Node

var me *repoType

type repoType struct {
	script   [][]string
	allrepos map[*repo]string
	myGui    *gui.Node

	// #### autotypist window
	autotypistWindow *gadgets.BasicWindow
	// #### autotypist Global Display Options
	autoHidePerfect *gui.Node

	// #### autotypist Global Build Options
	// what to change all the branches to
	// so, as a developer, you can move all the repos
	// to the 'devel' branch and then test a devel branch build
	// then switch back to your 'username' branch and do a build there
	toMoveToBranch string

	// displays the preferred names used for the repo tree state
	mainBranch  *gadgets.BasicCombobox
	develBranch *gadgets.BasicCombobox
	userBranch  *gadgets.BasicCombobox

	// this button will regenerate everyones go.mod & go.sum
	rerunGoMod *gui.Node
	// #### autotypist Global Distructive & Reset Options
	// #### autotypist window end
}

var cmds *gui.Node
var doit *gui.Node
var dryrun *gui.Node

type repo struct {
	hidden     bool
	path       string
	lasttagrev string
	lasttag    string
	// tags []string

	pLabel *gui.Node // path label
	// bLabel *gui.Node // branch label
	lastTag *gui.Node // last tagged version label
	vLabel  *gui.Node // version label
	// tagsDrop *gui.Node // list of all tags
	dirtyLabel *gui.Node // git state (dirty or not?)

	masterName    *gui.Node // the master branch name
	masterVersion *gui.Node // the master branch version
	develName     *gui.Node // the devel branch name
	develVersion  *gui.Node // the devel branch version
	userName      *gui.Node // the jcarr branch name
	userVersion   *gui.Node // the jcarr branch version

	cButton    *gui.Node // commit button
	pButton    *gui.Node // push button
	showButton *gui.Node // the button!

	status *repostatus.RepoStatus
}