1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
package gui
// Let's you toggle on and off the various types of debugging output
// These checkboxes should be in the same order as the are printed
func (n *Node) debugFlags(makeWindow bool) {
var w, g *Node
// Either:
// make a new window
// make a new tab in the existing window
if (makeWindow) {
Config.Title = "Debug Flags"
Config.Width = 300
Config.Height = 400
w = NewWindow()
w.Custom = w.StandardClose
} else {
w = n.NewTab("Flags")
}
w.Dump()
g = w.NewGroup("Debug Flags")
g.NewButton("Turn on all Debug Flags", func () {
SetDebug(true)
})
g.NewButton("Turn off all Debug Flags", func () {
SetDebug(false)
})
// generally useful debugging
cb1 := g.NewCheckbox("debugGui")
cb1.Custom = func() {
debugGui = cb1.widget.B
log(debugGui, "Custom() n.widget =", cb1.widget.Name, cb1.widget.B)
}
// errors. by default these always output somewhere
cbE := g.NewCheckbox("debugError")
cbE.Custom = func() {
debugError = cbE.widget.B
SetFlag("Error", debugError)
}
// debugging that will show you things like mouse clicks, user inputing text, etc
// also set toolkit.DebugChange
cb2 := g.NewCheckbox("debugChange")
cb2.Custom = func() {
debugChange = cb2.widget.B
SetFlag("Change", debugChange)
log(debugGui, "Custom() n.widget =", cb2.widget.Name, cb2.widget.B)
}
// supposed to tell if you are going to dump full variable output
cb3 := g.NewCheckbox("debugDump")
cb3.Custom = func() {
debugDump = cb3.widget.B
log(debugGui, "Custom() n.widget =", cb3.widget.Name, cb3.widget.B)
}
cb4 := g.NewCheckbox("debugTabs")
cb4.Custom = func() {
debugTabs = cb4.widget.B
log(debugGui, "Custom() n.widget =", cb4.widget.Name, cb4.widget.B)
}
// should show you when things go into or come back from the plugin
cb5 := g.NewCheckbox("debugPlugin")
cb5.Custom = func() {
debugPlugin = cb5.widget.B
log(debugGui, "Custom() n.widget =", cb5.widget.Name, cb5.widget.B)
}
cb6 := g.NewCheckbox("debugNode")
cb6.Custom = func() {
debugNode = cb6.widget.B
log(debugGui, "Custom() n.widget =", cb6.widget.Name, cb6.widget.B)
}
// turns on debugging inside the plugin toolkit
cb7 := g.NewCheckbox("debugToolkit")
cb7.Custom = func() {
// SetDebugToolkit(cb7.widget.B)
SetFlag("Toolkit", cb7.widget.B)
log(debugFlags, "Custom() n.widget =", cb7.widget.Name, cb7.widget.B)
}
g.NewButton("Dump Debug Flags", func () {
ShowDebugValues()
})
}
|