remove demo examples

Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
Jeff Carr 2019-05-23 16:38:33 -07:00
parent 3dca760b3e
commit cdf7ee0962
4 changed files with 8 additions and 285 deletions

52
demo.go
View File

@ -1,52 +0,0 @@
package gui
import "log"
import "github.com/andlabs/ui"
import _ "github.com/andlabs/ui/winmanifest"
var demowin *ui.Window
var demotab *ui.Tab
func SetupDemoUI() {
log.Println("setupDemoUI() START")
demowin = ui.NewWindow("Demo GUI Widgets", 500, 300, false)
demowin.OnClosing(func(*ui.Window) bool {
// if demowin != nil {
// demowin.Destroy()
// }
// // ui.Quit()
// demowin = nil
return true
})
ui.OnShouldQuit(func() bool {
demowin.Destroy()
demowin = nil
return true
})
demotab = ui.NewTab()
demowin.SetChild(demotab)
demowin.SetMargined(true)
demotab.Append("List examples", makeNumbersPage())
tabcount := 0
demotab.SetMargined(tabcount, true)
demotab.Append("Choosers examples", makeDataChoosersPage())
tabcount += 1
demotab.SetMargined(tabcount, true)
demotab.Append("Group examples", makeGroupEntries())
tabcount += 1
demotab.SetMargined(tabcount, true)
demowin.Show()
}
func CloseDemoUI() {
if demowin != nil {
demowin.Destroy()
}
demowin = nil
}

View File

@ -1,201 +0,0 @@
package gui
// import "log"
// import "github.com/gookit/config"
import "github.com/andlabs/ui"
import _ "github.com/andlabs/ui/winmanifest"
// import "github.com/davecgh/go-spew/spew"
func hostnameButton(hostname string) ui.Control {
tmpbox := ui.NewHorizontalBox()
tmpbox.SetPadded(true)
tmpButton := ui.NewButton(hostname)
tmpbox.Append(tmpButton, false)
tmpButton.OnClicked(defaultButtonClick)
return tmpbox
}
func makeGroupEntries() ui.Control {
group := ui.NewGroup("Entries")
group.SetMargined(true)
group.SetChild(ui.NewNonWrappingMultilineEntry())
entryForm := ui.NewForm()
entryForm.SetPadded(true)
group.SetChild(entryForm)
jcarrEntry := ui.NewMultilineEntry()
entryForm.Append("Entry", ui.NewEntry(), false)
entryForm.Append("Password Entry", ui.NewPasswordEntry(), false)
entryForm.Append("Search Entry", ui.NewSearchEntry(), false)
entryForm.Append("Multiline Entry", jcarrEntry, true)
entryForm.Append("Multiline Entry No Wrap", ui.NewNonWrappingMultilineEntry(), true)
return group
}
func makeNumbersPage() ui.Control {
hbox := ui.NewHorizontalBox()
hbox.SetPadded(true)
group := ui.NewGroup("Numbers")
group.SetMargined(true)
hbox.Append(group, true)
vbox := ui.NewVerticalBox()
vbox.SetPadded(true)
group.SetChild(vbox)
spinbox := ui.NewSpinbox(47, 100)
slider := ui.NewSlider(21, 100)
pbar := ui.NewProgressBar()
spinbox.OnChanged(func(*ui.Spinbox) {
slider.SetValue(spinbox.Value())
pbar.SetValue(spinbox.Value())
})
slider.OnChanged(func(*ui.Slider) {
spinbox.SetValue(slider.Value())
pbar.SetValue(slider.Value())
})
vbox.Append(spinbox, false)
vbox.Append(slider, false)
vbox.Append(pbar, false)
vbox.Append(hostnameButton("jcarrtest"), false)
ip := ui.NewProgressBar()
ip.SetValue(-1)
vbox.Append(ip, false)
group = ui.NewGroup("Lists")
group.SetMargined(true)
hbox.Append(group, true)
vbox = ui.NewVerticalBox()
vbox.SetPadded(true)
group.SetChild(vbox)
cbox := ui.NewCombobox()
cbox.Append("Combobox Item 1")
cbox.Append("Combobox Item 2")
cbox.Append("Combobox Item 3")
vbox.Append(cbox, false)
ecbox := ui.NewEditableCombobox()
ecbox.Append("Editable Item 1")
ecbox.Append("Editable Item 2")
ecbox.Append("Editable Item 3")
vbox.Append(ecbox, false)
rb := ui.NewRadioButtons()
rb.Append("Radio Button 1")
rb.Append("Radio Button 2")
rb.Append("Radio Button 3")
vbox.Append(rb, false)
return hbox
}
func makeDataChoosersPage() ui.Control {
hbox := ui.NewHorizontalBox()
hbox.SetPadded(true)
vbox := ui.NewVerticalBox()
vbox.SetPadded(true)
hbox.Append(vbox, false)
vbox.Append(ui.NewDatePicker(), false)
vbox.Append(ui.NewTimePicker(), false)
vbox.Append(ui.NewDateTimePicker(), false)
vbox.Append(ui.NewFontButton(), false)
vbox.Append(ui.NewColorButton(), false)
hbox.Append(ui.NewVerticalSeparator(), false)
vbox = ui.NewVerticalBox()
vbox.SetPadded(true)
hbox.Append(vbox, true)
grid := ui.NewGrid()
grid.SetPadded(true)
vbox.Append(grid, false)
button := ui.NewButton("Open File")
entry := ui.NewEntry()
entry.SetReadOnly(true)
button.OnClicked(func(*ui.Button) {
filename := ui.OpenFile(Data.mainwin)
if filename == "" {
filename = "(cancelled)"
}
entry.SetText(filename)
})
grid.Append(button,
0, 0, 1, 1,
false, ui.AlignFill, false, ui.AlignFill)
grid.Append(entry,
1, 0, 1, 1,
true, ui.AlignFill, false, ui.AlignFill)
button = ui.NewButton("Save File")
entry2 := ui.NewEntry()
entry2.SetReadOnly(true)
button.OnClicked(func(*ui.Button) {
filename := ui.SaveFile(Data.mainwin)
if filename == "" {
filename = "(cancelled)"
}
entry2.SetText(filename)
})
grid.Append(button,
0, 1, 1, 1,
false, ui.AlignFill, false, ui.AlignFill)
grid.Append(entry2,
1, 1, 1, 1,
true, ui.AlignFill, false, ui.AlignFill)
msggrid := ui.NewGrid()
msggrid.SetPadded(true)
grid.Append(msggrid,
0, 2, 2, 1,
false, ui.AlignCenter, false, ui.AlignStart)
button = ui.NewButton("Message Box")
button.OnClicked(func(*ui.Button) {
ui.MsgBox(Data.mainwin,
"This is a normal message box.",
"More detailed information can be shown here.")
})
msggrid.Append(button,
0, 0, 1, 1,
false, ui.AlignFill, false, ui.AlignFill)
button = ui.NewButton("Error Box")
button.OnClicked(func(*ui.Button) {
ui.MsgBoxError(Data.mainwin,
"This message box describes an error.",
"More detailed information can be shown here.")
})
msggrid.Append(button,
1, 0, 1, 1,
false, ui.AlignFill, false, ui.AlignFill)
return hbox
}
func AddChoosersDemo() {
Data.maintab.Append("Choosers examples", makeDataChoosersPage())
Data.maintab.SetMargined(Data.tabcount, true)
Data.tabcount += 1
}
// This hangs on GTK
func AddEntriesDemo() {
Data.maintab.Append("Group examples", makeGroupEntries())
Data.tabcount += 1
Data.maintab.SetMargined(Data.tabcount, true)
}

6
gui.go
View File

@ -246,3 +246,9 @@ func addVmButton(name string) ui.Control {
return tmpButton return tmpButton
} }
func SocketError() {
ui.MsgBoxError(Data.cloudWindow,
"There was a socket error",
"More detailed information can be shown here.")
}

View File

@ -3,8 +3,6 @@ package gui
import "log" import "log"
import "time" import "time"
import "fmt" import "fmt"
import "runtime/debug"
import "runtime"
import "github.com/gookit/config" import "github.com/gookit/config"
@ -233,11 +231,7 @@ func addDebuggingButtons(vbox *ui.Box, custom func(int, string)) {
*/ */
vbox.Append(add4button, false) vbox.Append(add4button, false)
add4abutton := ui.NewButton("Close Demo GUI") vbox.Append(CreateButton("Close GUI", "QUIT", custom), false)
add4abutton.OnClicked(func(*ui.Button) {
CloseDemoUI()
})
vbox.Append(add4abutton, false)
// Send a protobuf Event over the WIT socket // Send a protobuf Event over the WIT socket
add5button := CreateButton("Send protobuf to localhost", "SEND PROTOBUF TO LOCALHOST", custom) add5button := CreateButton("Send protobuf to localhost", "SEND PROTOBUF TO LOCALHOST", custom)
@ -250,29 +244,5 @@ func addDebuggingButtons(vbox *ui.Box, custom func(int, string)) {
*/ */
vbox.Append(add5button, false) vbox.Append(add5button, false)
// Send a protobuf over a gorilla websocket vbox.Append(CreateButton("DEBUG goroutines", "DEBUG", custom), false)
add6button := CreateButton("gorillaSendProtobuf()", "SEND PROTOBUF TO GORILLA SOCKET", custom)
/*
add6button := ui.NewButton("gorillaSendProtobuf()")
add6button.OnClicked(func(*ui.Button) {
log.Println("gorillaSendProtobuf()")
gorillaSendProtobuf()
})
*/
vbox.Append(add6button, false)
// debug all the golang goroutines
add7button := ui.NewButton("debug.PrintStack()")
add7button.OnClicked(func(*ui.Button) {
log.Println("debug.PrintStack() (SHOULD BE JUST THIS goroutine)")
debug.PrintStack()
log.Println("ATTEMPT FULL STACK DUMP")
log.Println("ATTEMPT FULL STACK DUMP")
log.Println("ATTEMPT FULL STACK DUMP")
buf := make([]byte, 1<<16)
runtime.Stack(buf, true)
fmt.Printf("%s", buf)
})
vbox.Append(add7button, false)
} }