summaryrefslogtreecommitdiff
path: root/logsettings
diff options
context:
space:
mode:
Diffstat (limited to 'logsettings')
-rw-r--r--logsettings/draw.go51
-rw-r--r--logsettings/settings.go1
-rw-r--r--logsettings/structs.go10
3 files changed, 40 insertions, 22 deletions
diff --git a/logsettings/draw.go b/logsettings/draw.go
index d6aeeb3..0dcfde4 100644
--- a/logsettings/draw.go
+++ b/logsettings/draw.go
@@ -25,13 +25,11 @@ func (d *LogSettings) Show() {
func (d *LogSettings) Hide() {
if ! d.Ready() {
- log.Warn("LogSettings.Show() window is not Ready()")
+ log.Warn("LogSettings.Hide() window is not Ready()")
return
}
log.Warn("LogSettings.Hide() window")
- if ! d.hidden {
- d.window.Hide()
- }
+ d.window.Hide()
d.hidden = true
}
@@ -39,49 +37,72 @@ func (d *LogSettings) Hide() {
// These checkboxes should be in the same order as the are printed
func (d *LogSettings) draw() {
if ! d.Ready() {return}
- var newW, newB, g *gui.Node
+ var g *gui.Node
- newW = d.parent.NewWindow("Debug Flags")
- newW.Custom = d.parent.StandardClose
+ d.window = d.parent.NewWindow("Debug Flags")
+ d.window.Custom = d.parent.StandardClose
- newB = newW.NewBox("hBox", true)
- g = newB.NewGroup("Show").Pad()
+ d.box = d.window.NewBox("hBox", true)
+ g = d.box.NewGroup("Show").Pad()
+ d.buttonG = g
g.NewButton("Redirect STDOUT to /tmp/", func () {
log.SetTmp()
})
g.NewButton("restore defaults", func () {
- log.SetDefaults()
+ for _, wg := range myLogGui.groups {
+ for _, f := range wg.flags {
+ f.SetDefault()
+ }
+ }
})
g.NewButton("all on", func () {
- log.SetAll(true)
+ for _, wg := range myLogGui.groups {
+ for _, f := range wg.flags {
+ f.Set(true)
+ }
+ }
})
g.NewButton("all off", func () {
- log.SetAll(false)
+ for _, wg := range myLogGui.groups {
+ for _, f := range wg.flags {
+ f.Set(false)
+ }
+ }
})
g.NewButton("Dump Flags", func () {
// ShowDebugValues()
log.ShowFlags()
+ for s, wg := range myLogGui.groups {
+ log.Log(true, "Dump Flags", s)
+ for _, f := range wg.flags {
+ log.Log(true, "Dump Flags\t", f.Name, ":", f.Desc)
+ }
+ }
})
- flagG := newB.NewGroup("Subsystem (aka package)")
+ d.flagG = d.box.NewGroup("Subsystem (aka package)")
g.NewButton("Add all Flags", func () {
flags := log.ShowFlags()
for _, f := range flags {
log.Log(true, "Get() ", "(" + f.Subsystem + ")", f.Name, "=", f.B, ":", f.Desc)
- addFlag(flagG, f)
+ addFlag(d.flagG, f)
}
})
+ g.NewButton("Close", func () {
+ d.Hide()
+ })
+
flags := log.ShowFlags()
for _, f := range flags {
log.Log(true, "Get() ", "(" + f.Subsystem + ")", f.Name, "=", f.B, ":", f.Desc)
- addFlag(flagG, f)
+ addFlag(d.flagG, f)
}
}
diff --git a/logsettings/settings.go b/logsettings/settings.go
index 6e5b866..4e95b7a 100644
--- a/logsettings/settings.go
+++ b/logsettings/settings.go
@@ -20,7 +20,6 @@ func New(p *gui.Node) *LogSettings {
func (ls *LogSettings) Set(b bool) {
// log.Set(ls.name, b)
log.Warn("log.Set() FIXME: not working here anymore")
- ls.checkbox.Set(b)
}
// Returns true if the status is valid
diff --git a/logsettings/structs.go b/logsettings/structs.go
index 2a14cb5..35b24ca 100644
--- a/logsettings/structs.go
+++ b/logsettings/structs.go
@@ -2,7 +2,7 @@ package logsettings
import (
"go.wit.com/gui/gui"
- "go.wit.com/gui/gadgets"
+// "go.wit.com/gui/gadgets"
)
var myLogGui *LogSettings
@@ -16,10 +16,8 @@ type LogSettings struct {
parent *gui.Node // where to draw our window
window *gui.Node // our window for displaying the log package settings
+ box *gui.Node // the first box in the window
- // Primary Directives
- status *gadgets.OneLiner
- summary *gadgets.OneLiner
-
- checkbox *gadgets.LogFlag
+ buttonG *gui.Node // the group of buttons
+ flagG *gui.Node // the group of all the flag checkbox widgets
}