diff options
| -rw-r--r-- | common.go | 7 | ||||
| -rw-r--r-- | init.go | 5 |
2 files changed, 12 insertions, 0 deletions
@@ -62,6 +62,13 @@ func (n *Node) Hide() *Node { return n } +func (n *Node) IsEnabled() bool { + if !n.Ready() { + return false + } + return n.enabled +} + // enables a widget so the user can see it and work/click/etc on it // by default, widgets are enabled when they are created func (n *Node) Enable() *Node { @@ -223,6 +223,11 @@ func watchCallback() { func (n *Node) gotUserEvent(a widget.Action) { log.Log(CHANGE, "gotUserEvent() received event node =", n.id, n.progname, a.Value) + if !n.IsEnabled() { + log.Log(WARN, "ignoring plugin event for a disabled widget", n.id, n.progname, a.Value) + return + } + switch n.WidgetType { case widget.Dropdown: // n.checked = a.State.Checked // TODO: do this and/or time to switch to protobuf |
