disable color works
Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
parent
50fe92a1b1
commit
4f19c8b64d
29
color.go
29
color.go
|
@ -41,7 +41,14 @@ var superLightGrey gocui.Attribute = gocui.GetColor("#55AAFF") // super light gr
|
|||
// Normal Text On mouseover
|
||||
//
|
||||
// Widget Frame Text background Text background
|
||||
var colorWindow colorT = colorT{none, gocui.ColorBlue, none, none, powdererBlue, "normal window"}
|
||||
var colorWindow colorT = colorT {
|
||||
frame: none,
|
||||
fg: gocui.ColorBlue,
|
||||
bg: none,
|
||||
selFg: none,
|
||||
selBg: powdererBlue,
|
||||
name: "normal window",
|
||||
}
|
||||
var colorActiveW colorT = colorT{none, none, powdererBlue, none, powdererBlue, "active window"}
|
||||
|
||||
var colorTab colorT = colorT{gocui.ColorBlue, gocui.ColorBlue, none, none, powdererBlue, "normal tab"}
|
||||
|
@ -51,6 +58,15 @@ var colorButton colorT = colorT{gocui.ColorGreen, none, gocui.ColorWhite, gocui.
|
|||
var colorLabel colorT = colorT{none, none, superLightGrey, none, superLightGrey, "normal label"}
|
||||
var colorGroup colorT = colorT{none, none, superLightGrey, none, superLightGrey, "normal group"}
|
||||
|
||||
var colorDisabled colorT = colorT {
|
||||
frame: superLightGrey,
|
||||
fg: superLightGrey,
|
||||
bg: superLightGrey,
|
||||
selFg: gocui.ColorBlack,
|
||||
selBg: gocui.ColorBlack,
|
||||
name: "disabled widget",
|
||||
}
|
||||
|
||||
// widget debugging colors. these widgets aren't displayed unless you are debugging
|
||||
var colorRoot colorT = colorT{gocui.ColorRed, none, powdererBlue, none, gocui.ColorBlue, "debug root"}
|
||||
var colorFlag colorT = colorT{gocui.ColorRed, none, powdererBlue, none, gocui.ColorGreen, "debug flag"}
|
||||
|
@ -83,6 +99,17 @@ func (tk *guiWidget) setColor(newColor *colorT) {
|
|||
tk.recreateView()
|
||||
}
|
||||
|
||||
func (w *guiWidget) disableColor() {
|
||||
if w.color != &colorDisabled {
|
||||
w.defaultColor = w.color
|
||||
}
|
||||
w.setColor(&colorDisabled)
|
||||
}
|
||||
|
||||
func (w *guiWidget) enableColor() {
|
||||
w.setColor(w.defaultColor)
|
||||
}
|
||||
|
||||
func (w *guiWidget) setDefaultWidgetColor() {
|
||||
w.showView()
|
||||
}
|
||||
|
|
37
plugin.go
37
plugin.go
|
@ -28,6 +28,12 @@ func action(a widget.Action) {
|
|||
me.treeRoot = n
|
||||
}
|
||||
addWidget(n)
|
||||
w = n.TK.(*guiWidget)
|
||||
if w.enable {
|
||||
// don't change the color
|
||||
} else {
|
||||
w.setColor(&colorDisabled)
|
||||
}
|
||||
} else {
|
||||
// this is done to protect the plugin being 'refreshed' with the
|
||||
// widget binary tree. TODO: find a way to keep them in sync
|
||||
|
@ -35,10 +41,19 @@ func action(a widget.Action) {
|
|||
a.WidgetId, a.ActionType, a.WidgetType, a.ProgName)
|
||||
}
|
||||
case widget.Show:
|
||||
if widget.GetBool(a.Value) {
|
||||
w.showView()
|
||||
if w.Visible() {
|
||||
// widget was already shown
|
||||
} else {
|
||||
w.hideWidgets()
|
||||
log.Log(INFO, "Setting Visible to true", a.ProgName)
|
||||
w.SetVisible(true)
|
||||
}
|
||||
w.showView()
|
||||
case widget.Hide:
|
||||
if w.Visible() {
|
||||
log.Log(INFO, "Setting Visible to false", a.ProgName)
|
||||
w.SetVisible(false)
|
||||
} else {
|
||||
// widget was already hidden
|
||||
}
|
||||
case widget.Set:
|
||||
if a.WidgetType == widget.Flag {
|
||||
|
@ -62,19 +77,11 @@ func action(a widget.Action) {
|
|||
log.Log(NOW, "attempting to close the plugin and release stdout and stderr")
|
||||
standardExit()
|
||||
case widget.Enable:
|
||||
if w.Visible() {
|
||||
// widget was already shown
|
||||
} else {
|
||||
log.Log(INFO, "Setting Visible to true", a.ProgName)
|
||||
w.SetVisible(true)
|
||||
}
|
||||
w.enable = true
|
||||
w.enableColor()
|
||||
case widget.Disable:
|
||||
if w.Visible() {
|
||||
log.Log(INFO, "Setting Visible to false", a.ProgName)
|
||||
w.SetVisible(false)
|
||||
} else {
|
||||
// widget was already hidden
|
||||
}
|
||||
w.enable = false
|
||||
w.disableColor()
|
||||
case widget.Delete:
|
||||
if w == nil {
|
||||
return
|
||||
|
|
|
@ -151,6 +151,11 @@ type guiWidget struct {
|
|||
|
||||
active bool
|
||||
|
||||
enable bool
|
||||
defaultColor *colorT // store the color to go back to
|
||||
|
||||
hidden bool
|
||||
|
||||
// AtW int
|
||||
// AtH int
|
||||
|
||||
|
|
Loading…
Reference in New Issue