summaryrefslogtreecommitdiff
path: root/pkg/gui/gui.go
diff options
context:
space:
mode:
authorIbrahim Serdar Acikgoz <serdaracikgoz86@gmail.com>2018-12-09 00:10:32 +0300
committerIbrahim Serdar Acikgoz <serdaracikgoz86@gmail.com>2018-12-09 00:10:32 +0300
commitaa6f0cf9a44f502fe41aecf9ed3f5ddbb8e20a71 (patch)
treed29e0dd7c754ff663c325202494a51d7ee034043 /pkg/gui/gui.go
parentgit add, git reset and git stash implementation added. (diff)
downloadgitbatch-aa6f0cf9a44f502fe41aecf9ed3f5ddbb8e20a71.tar.gz
added sync to remote branches with git fetch prune
Diffstat (limited to 'pkg/gui/gui.go')
-rw-r--r--pkg/gui/gui.go17
1 files changed, 12 insertions, 5 deletions
diff --git a/pkg/gui/gui.go b/pkg/gui/gui.go
index 5c32bc0..7fb3019 100644
--- a/pkg/gui/gui.go
+++ b/pkg/gui/gui.go
@@ -41,15 +41,15 @@ type mode struct {
}
// ModeID is the mode indicator for the gui
-type ModeID int8
+type ModeID string
const (
// FetchMode puts the gui in fetch state
- FetchMode ModeID = 0
+ FetchMode ModeID = "fetch"
// PullMode puts the gui in pull state
- PullMode ModeID = 1
+ PullMode ModeID = "pull"
// MergeMode puts the gui in merge state
- MergeMode ModeID = 2
+ MergeMode ModeID = "merge"
)
var (
@@ -70,10 +70,11 @@ var (
mergeMode = mode{ModeID: MergeMode, DisplayString: "Merge", CommandString: "merge"}
mainViews = []viewFeature{mainViewFeature, remoteViewFeature, remoteBranchViewFeature, branchViewFeature, commitViewFeature}
+ modes = []mode{fetchMode, pullMode, mergeMode}
)
// NewGui creates a Gui opject and fill it's state related entites
-func NewGui(directoies []string) (*Gui, error) {
+func NewGui(mode string, directoies []string) (*Gui, error) {
initialState := guiState{
Directories: directoies,
Mode: fetchMode,
@@ -82,6 +83,12 @@ func NewGui(directoies []string) (*Gui, error) {
gui := &Gui{
State: initialState,
}
+ for _, m := range modes {
+ if string(m.ModeID) == mode {
+ gui.State.Mode = m
+ break
+ }
+ }
return gui, nil
}