summaryrefslogtreecommitdiff
path: root/windowModify.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-01-30 13:35:22 -0600
committerJeff Carr <[email protected]>2025-01-30 13:35:22 -0600
commit4484b0b84d88fbad86ca6d202d3edfa9bb4946d0 (patch)
treeeed34ded8af61ac9b46a300ce7bd789d32975b0f /windowModify.go
parentc079039ffe06a09b8552ffbae40c861c726c0281 (diff)
new window for merge on a single repo
Diffstat (limited to 'windowModify.go')
-rw-r--r--windowModify.go123
1 files changed, 123 insertions, 0 deletions
diff --git a/windowModify.go b/windowModify.go
new file mode 100644
index 0000000..10c04f8
--- /dev/null
+++ b/windowModify.go
@@ -0,0 +1,123 @@
+package repostatus
+
+import (
+ "go.wit.com/gui"
+ "go.wit.com/lib/gadgets"
+ "go.wit.com/log"
+)
+
+func (rs *RepoStatus) drawGitCommands(box *gui.Node) {
+ rs.gitCommandsGroup = box.NewGroup("modify")
+ newgrid := rs.gitCommandsGroup.NewGrid("gridnuts", 0, 0)
+
+ newgrid.NewButton("Rescan Repo", func() {
+ rs.Update()
+ })
+
+ newgrid.NewButton("CheckDirty()", func() {
+ if rs.pb.CheckDirty() {
+ log.Log(WARN, "is dirty")
+ } else {
+ log.Log(WARN, "is not dirty")
+ }
+ })
+
+ newgrid.NewButton("show .git/config", func() {
+ if rs.pb.GitConfig == nil {
+ log.Log(WARN, "Nonexistant or damaged .git/config", rs.Path())
+ return
+ }
+ log.Log(WARN, ".git/config:", rs.realPath.String())
+
+ // The info:
+ for name, remote := range rs.pb.GitConfig.Remotes {
+ log.Log(WARN, " ", name, "url:", remote.Url)
+ }
+ for name, branch := range rs.pb.GitConfig.Branches {
+ log.Log(WARN, " ", name, "remote:", branch.Remote, "merge", branch.Merge)
+ }
+ })
+ newgrid.NextRow()
+
+ newgrid.NewButton("git pull", func() {
+ rs.pb.GitPull()
+ })
+ newgrid.NextRow()
+
+ label := "merge " + rs.userWorkingName.String() + " to " + rs.develWorkingName.String()
+ rs.develMergeB = newgrid.NewButton(label, func() {
+ rs.Disable()
+ if result, err := rs.pb.MergeToDevel(); err == nil {
+ log.Warn("THINGS SEEM OK fullAutomation() returned true.")
+ } else {
+ log.Warn("THINGS FAILED fullAutomation() returned false", result.Error)
+ }
+ rs.Enable()
+ })
+
+ label = "merge " + rs.develWorkingName.String() + " to " + rs.mainWorkingName.String()
+ rs.mainMergeB = newgrid.NewButton(label, func() {
+ rs.Disable()
+ if result, err := rs.pb.MergeToMaster(); err == nil {
+ log.Warn("THINGS SEEM OK fullAutomation() returned true.")
+ } else {
+ log.Warn("THINGS FAILED fullAutomation() returned false", result.Error)
+ }
+ rs.Enable()
+ })
+ newgrid.NewButton("increment version", func() {
+ log.Info("broken")
+ // rs.IncrementVersion()
+ })
+ newgrid.NextRow()
+
+ rs.major = gadgets.NewBasicCombobox(newgrid, "major")
+ rs.major.Custom = func() {
+ // rs.setTag()
+ // rs.generateCmd()
+ }
+ // rs.major.Hide()
+ newgrid.NextRow()
+
+ rs.minor = gadgets.NewBasicCombobox(newgrid, "minor")
+ rs.minor.Custom = func() {
+ // rs.setTag()
+ // rs.generateCmd()
+ }
+ // rs.minor.Hide()
+ newgrid.NextRow()
+
+ rs.revision = gadgets.NewBasicCombobox(newgrid, "revision")
+ rs.revision.Custom = func() {
+ // rs.setTag()
+ // rs.generateCmd()
+ }
+ // rs.revision.Hide()
+ newgrid.NextRow()
+
+ // newgrid.NewLabel("new tag version")
+ rs.newversion = newgrid.NewLabel("0.0.1")
+ // rs.newversion.Hide()
+ newgrid.NextRow()
+
+ rs.versionMessage = gadgets.NewBasicEntry(newgrid, "tag message")
+ rs.versionMessage.Custom = func() {
+ // rs.generateCmd()
+ }
+ // rs.versionMessage.Hide()
+ newgrid.NextRow()
+
+ rs.versionCmdOutput = gadgets.NewOneLiner(newgrid, "tag cmd")
+ // rs.versionCmdOutput.Hide()
+ newgrid.NextRow()
+
+ rs.releaseVersion = newgrid.NewButton("tag and release new version", func() {
+ rs.Disable()
+ rs.pb.MergeToMaster()
+ })
+ // rs.releaseVersion.Hide()
+ newgrid.NextRow()
+
+ newgrid.Margin()
+ newgrid.Pad()
+}