func WindowLogin() *cui.Window { Login := cui.NewWindow() Login.SetBase(&cui.Controlbase{2, 1, 70, 20, 0}) Login.Caption = "TAC Login" Username := cui.NewTextboxB(cui.Controlbase{3, 2, 30, 3, 0}, "User Name") Password := cui.NewTextboxB(cui.Controlbase{35, 2, 30, 3, 0}, "Password") Password.Maskchar = '*' Submit := cui.NewButtonB(cui.Controlbase{3, 14, 15, 3, 0}, "Submit") lblLoginProvider := cui.NewLabelB(cui.Controlbase{3, 6, 50, 1, 0}, "Login provider") chkLoginNormal := cui.NewCheckboxB(cui.Controlbase{3, 8, 20, 3, 0}, "Regular") chkLoginNormal.Toggle() chkLoginGelbooru := cui.NewCheckboxB(cui.Controlbase{15, 8, 20, 3, 0}, "Gelbooru") chkGroup := cui.NewCheckgroup() chkGroup.AddControl(chkLoginNormal, chkLoginGelbooru) Login.SelectedControl = Username Submit.Events.Onclick = func(e cui.Event) bool { if string(Username.Text) == "hurgh" { cui.PushWindow(WindowPasswordWrong()) } else { cui.PushWindow(WindowSplash()) } //cui.Navigate(WindowSplash()) return true } Login.AddControl(Username, Password, chkLoginNormal, chkLoginGelbooru, Submit) Login.AddDisplayControl(lblLoginProvider) return Login }
func WindowPasswordWrong() *cui.Window { PwdWindow := cui.NewWindow() PwdWindow.Background = termbox.ColorRed PwdWindow.Foreground = termbox.ColorWhite PwdWindow.SetBase(&cui.Controlbase{20, 8, 32, 9, 0}) Textbox := cui.NewLabelB(cui.Controlbase{2, 1, 48, 2, 0}, "Password wrong. Try again.") OkButton := cui.NewButtonB(cui.Controlbase{10, 3, 6, 3, 0}, " OK") OkButton.Events.Onclick = func(e cui.Event) bool { cui.PopWindow() return true } PwdWindow.AddDisplayControl(Textbox) PwdWindow.AddControl(OkButton) PwdWindow.SelectedControl = OkButton return PwdWindow }
func NewWindow1() *cui.Window { windowdata := ` {"Controls":[ {"Base":{ "X":5, "Y":5, "Width":20, "Height":3, "Z":0 }, "Text":"Button??"}, {"Base":{ "X":5,"Y":9,"Width":20,"Height":3,"Z":0 },"Text":"Hau!"} ], "SelectedControl":null,"Background":8,"Foreground":1,"Events":{"Onstart":[],"Onclick":[],"Onselect":[],"Onchange":[]}}` _ = windowdata //ret := &Window1{} ret := cui.NewWindow() //ret.SetBase(&cui.Controlbase{3, 3, 46, 24, 0}) ret.Background = termbox.ColorWhite Button1 := cui.NewButtonB(cui.Controlbase{3, 2, 20, 3, 0}, "Mass Tagger?") Button2 := cui.NewButtonB(cui.Controlbase{3, 6, 20, 3, 0}, "Exitme!") Textbox1 := cui.NewTextboxB(cui.Controlbase{3, 10, 40, 3, 0}, "") Checkbox1 := cui.NewCheckboxB(cui.Controlbase{3, 14, 3, 3, 0}, "Checkboxtext!") Label1 := cui.NewLabelB(cui.Controlbase{3, 18, 40, 3, 0}, "Check out the text field above! I also have a checkbox.") Label2 := cui.NewLabelB(cui.Controlbase{3, 20, 40, 3, 0}, "I am also a label but you can select me!") List := cui.NewListboxB(cui.Controlbase{44, 2, 30, 10, 0}, "ProgramRunner") List.Add("Gelmass", "C:\\Telnet\\gelmass.exe") List.Add("Hurp", "goconsole") List.Add("Lol", "cmd") List.Events.Onclick = func(e cui.Event) bool { v := List.SelectedElement.Value.(*cui.Listelement).Value.(string) cui.External(v) return true } Button1.Events.Onclick = func(e cui.Event) bool { cui.External("C:\\Telnet\\gelmass.exe", "localhost") return true } Button2.Events.Onclick = func(e cui.Event) bool { cui.End() return true } ret.AddControl(Button1, Button2, Textbox1, Checkbox1, Label2, List) ret.AddDisplayControl(Label1) ret.SelectedControl = ret.Controls[0] ret.SelectedControlindex = 0 ret.Caption = "Honigkuchenpwnzer" return ret //Firstwindow = &Window{} //err := json.Unmarshal([]byte(windowdata), Firstwindow) //if err != nil { // panic(err.Error()) //} }