gotime-lib/cmd/gotime-cui/main.go

81 lines
1.3 KiB
Go
Raw Permalink Normal View History

2017-01-11 23:45:04 +00:00
package main
import (
"fmt"
2017-01-24 23:00:21 +00:00
termbox "github.com/nsf/termbox-go"
"gogs.bullercodeworks.com/brian/user-config"
2017-01-11 23:45:04 +00:00
)
2017-01-24 23:00:21 +00:00
const AppName = "gotime"
2017-01-11 23:45:04 +00:00
func main() {
2017-01-24 23:00:21 +00:00
cfg, err := userConfig.NewConfig(AppName)
2017-01-11 23:45:04 +00:00
2017-01-24 23:00:21 +00:00
if cfg.Get("dir") != "" {
var dir string
fmt.Print("Timewarrior Data Directory: ")
fmt.Scanln(&dir)
}
2017-01-24 23:00:21 +00:00
err = termbox.Init()
if err != nil {
panic(err)
2017-01-11 23:45:04 +00:00
}
2017-01-24 23:00:21 +00:00
defer termbox.Close()
termbox.SetOutputMode(termbox.Output256)
2017-01-24 23:00:21 +00:00
style := defaultStyle()
mainLoop(style)
2017-01-24 23:00:21 +00:00
/*
dir := "/home/brbuller/.timewarrior/"
op := os.Args[1]
var id int
var err error
if len(os.Args) > 2 {
id, err = strconv.Atoi(os.Args[2])
if err != nil {
panic(err)
}
}
2017-01-24 23:00:21 +00:00
got := gotime.Create(dir)
switch op {
case "ls":
tmrs := got.GetAllTimers()
for i := range tmrs {
fmt.Println("@" + strconv.Itoa(tmrs[i].Id) + ": " + tmrs[i].ToString())
}
case "tag":
if _, err := got.AddTagsToTimer(id, os.Args[3:]); err != nil {
panic(err)
}
case "untag":
if _, err := got.RemoveTagsFromTimer(id, os.Args[3:]); err != nil {
panic(err)
}
case "start":
got.StartTimer()
case "stop":
got.StopTimer()
}
2017-01-24 23:00:21 +00:00
*/
}
const (
MainScreenIndex = iota
AboutScreenIndex
ExitScreenIndex
)
func createScreens() []Screen {
return []Screen{
CreateMainScreen(),
AboutScreen(0),
2017-01-11 23:45:04 +00:00
}
}