package app import ( "fmt" "os" "codeberg.org/danjones000/strip-beats/input/boolean" "codeberg.org/danjones000/strip-beats/media" ) type AppStep int const ( Pick AppStep = iota Watch Restart Quit ) func quit() { PickAgain() fmt.Println("Goodbye!") os.Exit(0) } func Run(step AppStep) { for step < Quit { switch step { case Pick: PickAgain() PickFileWithConf() if file == nil { quit() } watch := boolean.Choose(fmt.Sprintf("Would you like to watch %s?", file.ShortPath())) if watch { step = Watch } case Watch: media.Watch(file.Format.Path) step = Quit // @todo case Quit: quit() } } }