75 lines
1.8 KiB
Go
75 lines
1.8 KiB
Go
package main
|
|
|
|
import (
|
|
"go.wit.com/dev/alexflint/arg"
|
|
"go.wit.com/gui"
|
|
"go.wit.com/lib/gadgets"
|
|
"go.wit.com/lib/protobuf/forgepb"
|
|
"go.wit.com/lib/protobuf/gitpb"
|
|
)
|
|
|
|
var me *mainType
|
|
|
|
func (b *mainType) Disable() {
|
|
b.mainbox.Disable()
|
|
}
|
|
|
|
func (b *mainType) Enable() {
|
|
b.mainbox.Enable()
|
|
}
|
|
|
|
// this app's variables
|
|
type mainType struct {
|
|
pp *arg.Parser // for parsing the command line args. Yay to alexf lint!
|
|
forge *forgepb.Forge // for holding the forge protobuf files
|
|
myGui *gui.Node // the gui toolkit handle
|
|
found *gitpb.Repos // stores the list of repos to process things on
|
|
foundPaths []string // stores gopaths to act on (when doing go-clone)
|
|
configSave bool // if the config file should be saved after finishing
|
|
urlbase string // base URL
|
|
|
|
// our view of the repositories
|
|
repos *repoWindow
|
|
|
|
mainWindow *gadgets.BasicWindow
|
|
|
|
// the main box. enable/disable this
|
|
mainbox *gui.Node
|
|
|
|
// the window from the /lib/gui/gowit package
|
|
// lw *gadgets.BasicWindow
|
|
|
|
// #### Sorting options for the repolist
|
|
// autoHidePerfect *gui.Node
|
|
// autoHideReadOnly *gui.Node
|
|
|
|
// checkbox for --dry-run
|
|
autoDryRun *gui.Node
|
|
|
|
// checkbox to enable intermittent scanning
|
|
// if checked, it will check all your repos for changes
|
|
autoScanReposCB *gui.Node
|
|
|
|
// what is being used as your home dir
|
|
userHomePwd *gadgets.OneLiner
|
|
|
|
// what is being used as ~/go/src
|
|
goSrcPwd *gadgets.OneLiner
|
|
|
|
// ENV GIT_AUTHOR NAME and EMAIL
|
|
gitAuthor *gadgets.OneLiner
|
|
|
|
// displays a summary of all the repos
|
|
// has total dirty, total read-only
|
|
// total patches, etc
|
|
summary *patchSummary
|
|
|
|
// when switch to user or devel branches, autocreate them
|
|
autoCreateBranches *gui.Node
|
|
|
|
// these hold the branches that the user can switch all
|
|
// the repositories to them
|
|
newBranch *gui.Node
|
|
setBranchB *gui.Node
|
|
}
|