116 lines
2.4 KiB
Go
116 lines
2.4 KiB
Go
package gui
|
|
|
|
import (
|
|
"strconv"
|
|
)
|
|
|
|
func DebugWidgetWindow(w *Node) {
|
|
var win, g *Node
|
|
|
|
title := "ID =" + strconv.Itoa(w.id) + " " + w.widget.Name
|
|
|
|
Config.Title = title
|
|
Config.Width = 300
|
|
Config.Height = 400
|
|
win = NewWindow()
|
|
win.Custom = w.StandardClose
|
|
|
|
g = win.NewGroup("Actions")
|
|
|
|
g.NewLabel(title)
|
|
g.NewButton("Dump()", func () {
|
|
w.Dump()
|
|
})
|
|
g.NewButton("Disable()", func () {
|
|
w.widget.Action = "Disable"
|
|
send(w.parent, w)
|
|
})
|
|
g.NewButton("Enable()", func () {
|
|
w.widget.Action = "Enable"
|
|
send(w.parent, w)
|
|
})
|
|
g.NewButton("Show()", func () {
|
|
w.widget.Action = "Show"
|
|
send(w.parent, w)
|
|
})
|
|
g.NewButton("Hide()", func () {
|
|
w.widget.Action = "Hide"
|
|
send(w.parent, w)
|
|
})
|
|
g.NewButton("Value()", func () {
|
|
log("w.B =", w.widget.B)
|
|
log("w.I =", w.widget.I)
|
|
log("w.S =", w.widget.S)
|
|
})
|
|
g.NewButton("Set Value(20)", func () {
|
|
w.widget.Action = "Set"
|
|
w.widget.B = true
|
|
w.widget.I = 20
|
|
w.widget.S = "Set Value(20)"
|
|
send(w.parent, w)
|
|
})
|
|
g.NewButton("Delete()", func () {
|
|
Delete(w)
|
|
})
|
|
}
|
|
|
|
func (n *Node) debugWidgets(makeWindow bool) {
|
|
var w, gList, gShow *Node
|
|
|
|
// Either:
|
|
// make a new window
|
|
// make a new tab in the existing window
|
|
if (makeWindow) {
|
|
Config.Title = "Widgets"
|
|
Config.Width = 300
|
|
Config.Height = 400
|
|
w = NewWindow()
|
|
w.Custom = w.StandardClose
|
|
} else {
|
|
w = n.NewTab("Widgets")
|
|
}
|
|
w.Dump()
|
|
|
|
gList = w.NewGroup("Pick a widget to debug")
|
|
gShow = w.NewGroup("Added Widgets go here")
|
|
|
|
gList.NewButton("Button", func () {
|
|
a := gShow.NewButton("myButton", func () {
|
|
log("this code is more better")
|
|
})
|
|
DebugWidgetWindow(a)
|
|
})
|
|
gList.NewButton("Checkbox", func () {
|
|
a := gShow.NewCheckbox("myCheckbox")
|
|
a.Custom = func () {
|
|
log("custom checkox func a =", a.widget.B, a.id)
|
|
}
|
|
DebugWidgetWindow(a)
|
|
})
|
|
gList.NewButton("Label", func () {
|
|
a := gShow.NewLabel("mylabel")
|
|
DebugWidgetWindow(a)
|
|
})
|
|
gList.NewButton("Textbox", func () {
|
|
a := gShow.NewTextbox("mytext")
|
|
a.Custom = func () {
|
|
log("custom TextBox() a =", a.widget.S, a.id)
|
|
}
|
|
DebugWidgetWindow(a)
|
|
})
|
|
gList.NewButton("Slider", func () {
|
|
a := gShow.NewSlider("tmp slider", 10, 55)
|
|
a.Custom = func () {
|
|
log("custom slider() a =", a.widget.S, a.id)
|
|
}
|
|
DebugWidgetWindow(a)
|
|
})
|
|
gList.NewButton("Spinner", func () {
|
|
a := gShow.NewSpinner("tmp spinner", 6, 32)
|
|
a.Custom = func () {
|
|
log("custom spinner() a =", a.widget.S, a.id)
|
|
}
|
|
DebugWidgetWindow(a)
|
|
})
|
|
}
|