mirror of
https://github.com/bcicen/ctop.git
synced 2024-08-30 18:23:19 +00:00
56 lines
978 B
Go
56 lines
978 B
Go
package config
|
|
|
|
// defaults
|
|
var switches = []*Switch{
|
|
&Switch{
|
|
Key: "sortReversed",
|
|
Val: false,
|
|
Label: "Reverse Sort Order",
|
|
},
|
|
&Switch{
|
|
Key: "allContainers",
|
|
Val: true,
|
|
Label: "Show All Containers",
|
|
},
|
|
&Switch{
|
|
Key: "enableHeader",
|
|
Val: true,
|
|
Label: "Enable cTop Status Line",
|
|
},
|
|
&Switch{
|
|
Key: "loggingEnabled",
|
|
Val: false,
|
|
Label: "Enable Logging Server",
|
|
},
|
|
}
|
|
|
|
type Switch struct {
|
|
Key string
|
|
Val bool
|
|
Label string
|
|
}
|
|
|
|
// Return Switch by key
|
|
func GetSwitch(k string) *Switch {
|
|
for _, sw := range GlobalSwitches {
|
|
if sw.Key == k {
|
|
return sw
|
|
}
|
|
}
|
|
return &Switch{} // default
|
|
}
|
|
|
|
// Return Switch value by key
|
|
func GetSwitchVal(k string) bool {
|
|
return GetSwitch(k).Val
|
|
}
|
|
|
|
// Toggle a boolean switch
|
|
func Toggle(k string) {
|
|
sw := GetSwitch(k)
|
|
newVal := sw.Val != true
|
|
log.Noticef("config change: %s: %t -> %t", k, sw.Val, newVal)
|
|
sw.Val = newVal
|
|
//log.Errorf("ignoring toggle for non-existant switch: %s", k)
|
|
}
|