Finished menu
This commit is contained in:
parent
4f6107ca15
commit
065ee70e3a
33
menu.go
33
menu.go
@ -16,6 +16,8 @@ const (
|
||||
|
||||
var (
|
||||
menu string = ""
|
||||
menuwidth int = 0
|
||||
Message string = ""
|
||||
)
|
||||
|
||||
func terminalSize() (width, height int) {
|
||||
@ -29,19 +31,27 @@ func terminalSize() (width, height int) {
|
||||
return width, height
|
||||
}
|
||||
|
||||
func clear() {
|
||||
_, height := terminalSize()
|
||||
fmt.Printf("%v", strings.Repeat("\n", height+1))
|
||||
}
|
||||
|
||||
func generateMenu() string {
|
||||
if menu == "" {
|
||||
var width, height int = terminalSize()
|
||||
if menu == "" && width != menuwidth {
|
||||
menuwidth = width
|
||||
var content []string = strings.Split(ascii, "\n")
|
||||
content = append(content, strings.Split(tekst, "\n")...)
|
||||
var options []string = strings.Split(tekst, "\n")
|
||||
content = append(content, make([]string, (height-4)-len(content)-len(options))...)
|
||||
content = append(content, options...)
|
||||
menu += strings.Repeat("-", width)
|
||||
for _, value := range content {
|
||||
var length int = len(value)
|
||||
menu += "|"
|
||||
menu += strings.Repeat(" ", math.Floor((width-length-2)/2.0))
|
||||
menu += strings.Repeat(" ", int(math.Floor(float64((width-length-3)/2.0))))
|
||||
menu += value
|
||||
menu += strings.Repeat(" ", math.Ceil((width-length-2)/2.0))
|
||||
menu += "|"
|
||||
menu += strings.Repeat(" ", int(math.Ceil(float64((width-length-2)/2.0))))
|
||||
menu += "|\n"
|
||||
}
|
||||
menu += strings.Repeat("-", width)
|
||||
}
|
||||
@ -49,5 +59,16 @@ func generateMenu() string {
|
||||
}
|
||||
|
||||
func showMenu() {
|
||||
fmt.Println(generateMenu())
|
||||
clear()
|
||||
fmt.Print(generateMenu())
|
||||
if Message != "" {
|
||||
fmt.Println(Message)
|
||||
} else {
|
||||
fmt.Print("\n")
|
||||
}
|
||||
fmt.Print("Maak uw keuze: ")
|
||||
var i int
|
||||
fmt.Scanf("%d", &i)
|
||||
fmt.Println(i)
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user