parent
be54390fcd
commit
e0fba129e0
45
draw.go
45
draw.go
|
@ -1,6 +1,8 @@
|
|||
package repostatus
|
||||
|
||||
import (
|
||||
"strconv"
|
||||
|
||||
"go.wit.com/log"
|
||||
"go.wit.com/gui/gadgets"
|
||||
)
|
||||
|
@ -76,11 +78,50 @@ func draw(rs *RepoStatus) {
|
|||
|
||||
rs.releaseVersion = rs.grid.NewButton("release version", func() {
|
||||
lasttag := rs.lasttag.Get()
|
||||
ver := normalizeVersion(lasttag)
|
||||
log.Warn("Should release version here", lasttag, ver)
|
||||
var major, minor, revision string
|
||||
major, minor, revision = splitVersion(lasttag)
|
||||
log.Warn("Should release version here", lasttag)
|
||||
log.Warn("Should release a,b,c", major, minor, revision)
|
||||
|
||||
// rs.a = major
|
||||
// rs.b = minor
|
||||
// rs.c = revision
|
||||
rs.a, _ = strconv.Atoi(major)
|
||||
rs.b, _ = strconv.Atoi(minor)
|
||||
rs.c, _ = strconv.Atoi(revision)
|
||||
rs.setCombobox()
|
||||
})
|
||||
rs.releaseVersion.Disable()
|
||||
|
||||
rs.vgroup = rs.window.Box().NewGroup("Version")
|
||||
rs.major = gadgets.NewBasicCombobox(rs.grid, "master")
|
||||
rs.minor = gadgets.NewBasicCombobox(rs.grid, "minor")
|
||||
rs.revision = gadgets.NewBasicCombobox(rs.grid, "revision")
|
||||
|
||||
rs.grid.Margin()
|
||||
rs.grid.Pad()
|
||||
}
|
||||
|
||||
func (rs *RepoStatus) setCombobox() {
|
||||
addCombobox(rs.major, rs.a)
|
||||
addCombobox(rs.major, rs.a + 1)
|
||||
setCombobox(rs.major, rs.a)
|
||||
|
||||
addCombobox(rs.minor, rs.b)
|
||||
addCombobox(rs.minor, rs.b + 1)
|
||||
setCombobox(rs.minor, rs.b)
|
||||
|
||||
// rs.c := strconv.Atoi(revision)
|
||||
rs.revision.Add(strconv.Itoa(rs.c + 1))
|
||||
rs.revision.Add(strconv.Itoa(rs.c + 2))
|
||||
}
|
||||
|
||||
func addCombobox(cb *gadgets.BasicCombobox, i int) {
|
||||
s := strconv.Itoa(i)
|
||||
cb.Add(s)
|
||||
}
|
||||
|
||||
func setCombobox(cb *gadgets.BasicCombobox, i int) {
|
||||
s := strconv.Itoa(i)
|
||||
cb.Sdd(s)
|
||||
}
|
||||
|
|
|
@ -36,6 +36,15 @@ type RepoStatus struct {
|
|||
develMerge *gui.Node
|
||||
releaseVersion *gui.Node
|
||||
|
||||
vgroup *gui.Node
|
||||
minor *gadgets.BasicCombobox
|
||||
major *gadgets.BasicCombobox
|
||||
revision *gadgets.BasicCombobox
|
||||
|
||||
a int
|
||||
b int
|
||||
c int
|
||||
|
||||
speed *gadgets.OneLiner
|
||||
speedActual *gadgets.OneLiner
|
||||
}
|
||||
|
|
13
unix.go
13
unix.go
|
@ -89,3 +89,16 @@ func normalizeVersion(s string) string {
|
|||
log.Log(WARN, "normalizeVersion() s =", clean)
|
||||
return clean
|
||||
}
|
||||
|
||||
func splitVersion(version string) (a, b, c string) {
|
||||
tmp := normalizeVersion(version)
|
||||
parts := strings.Split(tmp, ".")
|
||||
switch len(parts) {
|
||||
case 1:
|
||||
return parts[0], "", ""
|
||||
case 2:
|
||||
return parts[0], parts[1], ""
|
||||
default:
|
||||
return parts[0], parts[1], parts[2]
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue