package app import ( "codeberg.org/danjones000/strip-beats/files" "codeberg.org/danjones000/strip-beats/input/boolean" "codeberg.org/danjones000/strip-beats/media" "fmt" p "path" ) var file *media.Probe func PickNewFile() media.Probe { path := files.PickRandomFile() return SetFile(path) } func SetFile(path string) media.Probe { f := media.ProbeFile(path) file = &f return f } func PickFileWithConf() media.Probe { var path string var msg string var base string var dir string good := false for !good { path = files.PickRandomFile() base = p.Base(path) dir = p.Dir(path) dir = p.Base(dir) msg = fmt.Sprintf("We've selected %s%s%s\nIs that ok?", dir, "/", base) good = boolean.Choose(msg) } return SetFile(path) } func GetFile() media.Probe { if file == nil { return PickNewFile() } return *file } func ForgetFile() { file = nil }