blob: 39840c37020be32adfdc7158220c5cd57f228e3d (
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
|
// Copyright 2017-2025 WIT.COM Inc. All rights reserved.
// Use of this source code is governed by the GPL 3.0
package main
import (
"go.wit.com/dev/alexflint/arg"
"go.wit.com/gui"
"go.wit.com/lib/env"
"go.wit.com/lib/fhelp"
"go.wit.com/lib/gadgets"
"go.wit.com/lib/protobuf/argvpb"
"go.wit.com/lib/protobuf/forgepb"
)
// var newargv *argvpb.Argv // more experiments for bash handling
var me *mainType
func (b *mainType) Disable() {
b.mainbox.Disable()
}
func (b *mainType) Enable() {
b.mainbox.Enable()
}
// returns the server to connect to
func myServer() string {
return env.Get("ForgeURL")
}
// this app's variables
type mainType struct {
argv *argvpb.Argv // shell autocomplete
pp *arg.Parser // the go-arg parser of the command line
forge *forgepb.Forge // for holding the forge protobuf files
myGui *fhelp.GuiPrep // for initializing the GUI toolkits
origGui *gui.Node // for initializing the GUI toolkits
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
curpatches *forgepb.Patches // current patches not upstream
mainWindow *gadgets.BasicWindow
mainbox *gui.Node // the main box. enable/disable this
autoDryRun *gui.Node // checkbox for --dry-run
goSrcPwd *gadgets.OneLiner // what is being used as primary directory for your work
goSrcEdit *gadgets.BasicEntry // what is being used as primary directory for your work
gitAuthor *gadgets.OneLiner // env GIT_AUTHOR NAME and EMAIL
// these hold the branches that the user can switch all the repositories to them
reposWinB *gui.Node // button that opens the repos window
repoAllB *gui.Node // "all" repos button
repoDirtyB *gui.Node // "dirty" repos button
repoDevelMergeB *gui.Node // "merge to devel" repos button
repoWritableB *gui.Node // "what repos are writable" repos button
}
|