Archived
1
0

Finished menu

This commit is contained in:
Jip J. Dekker 2013-10-18 21:17:23 +02:00
parent 4f6107ca15
commit 065ee70e3a

39
menu.go
View File

@ -10,12 +10,14 @@ import (
)
const (
ascii string = "-hMMMMMMMMMMMd:\n-hMMMMMMMMMMMd:\n-:::::::::::::::::::::::::`.::::::::::::::::::::::::::.-hMMMMMMMMMMMd:\n`oNMMMMMMMMMM.MMMMMMMMMMMMM.ssmMMMMMMMMMMMMMMMMMMMMMMdshMMMMMMMMMMMd:\n`oNMMMMMMMM.MMMMMMMMMMMMM.NNysmMMMMMMMMMMMMMMMMMMmshMMMMMMMMMMMd:\n`oNMMMMMM.MMMMMMMMMMMMM.NMMNysmMMMMMMMMMMMMMMmshMMMMMMMMMMMd/\n`oNMMMM.MMMMMMMMMMMMM.NMMMMNysmMMMMMMMMMMm+ohddddddddddh/`\n`oNMM.MMMMMMMMMMMMM.NMMMMMMNysmMMMMMMm/`````````````\n.oN.MMMMMMMMMMMMM.NMMMMMMMMNysmMMm/`\n.:::::::::::::`NMMMMMMMMMMNys+`\nNMMMMMMMMMMMMNo.\nNMMMMMMMMMMMMMMmo`\nNMMMMMMMMMMMMMMMMmo`\nNMMMMMMMMMMMMMMMMMy.\nNMMMMMMMMMMMMMMMh-\nNMMMMMMMMMMMMMh:\nNMMMMMMMMMMMh:\nNMMMMMMMMMh:\nNMMMMMMMdyo\nNMMMMMdydMy\nNMMMdsdMMMy\nNMdsdMMMMMy\ndsdMMMMMMMy\n:hMMMMMMMMMy\n:hMMMMMMMMMMMy\n-hMMMMMMMMMMMMMy\n-hMMMMMMMMMMMMMMMy\n-yMMMMMMMMMMMMMMMMMy\n:dMMMMMMMMMMMMMMMMMy\n:dMMMMMMMMMMMMMMMy\n/dMMMMMMMMMMMMMy\n/dMMMMMMMMMMMy-.\n/dMMMMMMMMMy+Ns.\n/dMMMMMMMy+MMNs.\n/mMMMMMy+MMMMNs.\n/mMMMy+MMMMMMMs.\n/mMy+MMMMMMMMMs.\n/++MMMMMMMMMMMy."
ascii string = " -hMMMMMMMMMMMd:\n -hMMMMMMMMMMMd: \n-:::::::::::: :::::::::::::`.::::::::::::::::::::::::::.-hMMMMMMMMMMMd: \n`oNMMMMMMMMMM.MMMMMMMMMMMMM.ssmMMMMMMMMMMMMMMMMMMMMMMdshMMMMMMMMMMMd: \n `oNMMMMMMMM.MMMMMMMMMMMMM.NNysmMMMMMMMMMMMMMMMMMMmshMMMMMMMMMMMd: \n `oNMMMMMM.MMMMMMMMMMMMM.NMMNysmMMMMMMMMMMMMMMmshMMMMMMMMMMMd/ \n `oNMMMM.MMMMMMMMMMMMM.NMMMMNysmMMMMMMMMMMm+ohddddddddddh/` \n `oNMM.MMMMMMMMMMMMM.NMMMMMMNysmMMMMMMm/` ```````````` \n .oN.MMMMMMMMMMMMM.NMMMMMMMMNysmMMm/` \n . :::::::::::::`NMMMMMMMMMMNys+` \n NMMMMMMMMMMMMNo. \n NMMMMMMMMMMMMMMmo` \n NMMMMMMMMMMMMMMMMmo` \n NMMMMMMMMMMMMMMMMMy. \n NMMMMMMMMMMMMMMMh- \n NMMMMMMMMMMMMMh: \n NMMMMMMMMMMMh: \n NMMMMMMMMMh: \n NMMMMMMMdyo \n NMMMMMdydMy \n NMMMdsdMMMy \n NMdsdMMMMMy \n dsdMMMMMMMy \n :hMMMMMMMMMy \n :hMMMMMMMMMMMy \n -hMMMMMMMMMMMMMy \n -hMMMMMMMMMMMMMMMy \n -yMMMMMMMMMMMMMMMMMy \n :dMMMMMMMMMMMMMMMMMy \n :dMMMMMMMMMMMMMMMy \n /dMMMMMMMMMMMMMy \n /dMMMMMMMMMMMy-. \n /dMMMMMMMMMy+Ns. \n /dMMMMMMMy+MMNs. \n /mMMMMMy+MMMMNs. \n /mMMMy+MMMMMMMs. \n /mMy+MMMMMMMMMs. \n /++MMMMMMMMMMMy. "
tekst string = "Thalia Constitutieborrel Gastenboek\n1) Schrijf een nieuw bericht.\n2) Lees oude berichten."
)
var (
menu string = ""
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()
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)
}