restore defaults, all on, all off all work
Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
parent
10001c7006
commit
32876a5bfb
14
logFlag.go
14
logFlag.go
|
@ -21,6 +21,7 @@ type LogFlag struct {
|
|||
Name string
|
||||
Subsystem string
|
||||
Desc string
|
||||
Default bool
|
||||
b bool
|
||||
|
||||
Custom func()
|
||||
|
@ -31,8 +32,15 @@ func (f *LogFlag) Get() bool {
|
|||
}
|
||||
|
||||
func (f *LogFlag) Set(b bool) {
|
||||
log.Println("LogFlag.Set() =", b)
|
||||
log.Info("LogFlag.Set() =", b)
|
||||
log.Set(f.Subsystem, f.Name, b)
|
||||
f.c.Set(b)
|
||||
}
|
||||
|
||||
func (f *LogFlag) SetDefault() {
|
||||
log.Info("LogFlag.SetDefault() =", f.Default)
|
||||
log.Set(f.Subsystem, f.Name, f.Default)
|
||||
f.c.Set(f.Default)
|
||||
}
|
||||
|
||||
func NewLogFlag(n *gui.Node, lf *log.LogFlag) *LogFlag {
|
||||
|
@ -40,6 +48,7 @@ func NewLogFlag(n *gui.Node, lf *log.LogFlag) *LogFlag {
|
|||
Name: lf.Name,
|
||||
Subsystem: lf.Subsystem,
|
||||
Desc: lf.Desc,
|
||||
Default: lf.Default,
|
||||
p: n,
|
||||
}
|
||||
|
||||
|
@ -47,8 +56,9 @@ func NewLogFlag(n *gui.Node, lf *log.LogFlag) *LogFlag {
|
|||
f.c = n.NewCheckbox(f.Name + ": " + f.Desc)
|
||||
f.c.Custom = func() {
|
||||
log.Set(f.Subsystem, f.Name, f.c.B)
|
||||
log.Println("LogFlag.Custom() user changed value to =", log.Get(f.Subsystem, f.Name))
|
||||
log.Info("LogFlag.Custom() user changed value to =", log.Get(f.Subsystem, f.Name))
|
||||
}
|
||||
f.c.Set(lf.B)
|
||||
|
||||
return &f
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue