summaryrefslogtreecommitdiff
path: root/plugin.go
diff options
context:
space:
mode:
Diffstat (limited to 'plugin.go')
-rw-r--r--plugin.go98
1 files changed, 43 insertions, 55 deletions
diff --git a/plugin.go b/plugin.go
index c0d661f..30509ca 100644
--- a/plugin.go
+++ b/plugin.go
@@ -220,13 +220,23 @@ func (tk *guiWidget) GetText() string {
return ""
}
-func (tk *guiWidget) Disable() {
- if tk == nil {
- log.Log(NOW, "widget is nil")
- return
+func hideDisable() {
+ if me.textbox.tk == nil {
+ initTextbox()
+ me.textbox.tk.prepTextbox()
+ }
+
+ me.textbox.tk.Hide()
+ me.textbox.tk.enable = false
+ me.textbox.tk.node.State.Enable = false
+ me.textbox.active = false
+}
+
+func showDisable() {
+ if me.textbox.tk == nil {
+ initTextbox()
+ me.textbox.tk.prepTextbox()
}
- initTextbox()
- tk.prepTextbox()
r := new(rectType)
r.w0 = 2
r.h0 = 1
@@ -252,62 +262,40 @@ func (tk *guiWidget) Disable() {
me.baseGui.SetKeybinding(me.textbox.tk.v.Name(), gocui.KeyEnter, gocui.ModNone, theCloseTheTextbox)
me.textbox.active = true
-
- /*
- tk.enable = false
- tk.node.State.Enable = false
- // log.Info("disable widget in gocui", tk.node.WidgetType, tk.node.ProgName())
- switch tk.node.WidgetType {
- case widget.Box:
- // log.Info("todo: blank out the window here", tk.String())
- r := new(rectType)
- // startW, startH := tk.Position()
- r.w0 = 0
- r.h0 = 0
- r.w1 = r.w0 + 24
- r.h1 = r.h0 + 2
- me.textbox.tk.forceSizes(r)
- showTextbox("Running...")
- return
- case widget.Button:
- tk.setColorDisable()
- return
- default:
- tk.dumpWidget("fixme: disable")
- }
- */
}
-func (tk *guiWidget) Enable() {
+func (tk *guiWidget) Disable() {
if tk == nil {
log.Log(NOW, "widget is nil")
return
}
- initTextbox()
- tk.prepTextbox()
- me.textbox.tk.Hide()
- me.textbox.tk.enable = false
- me.textbox.tk.node.State.Enable = false
+ switch tk.node.WidgetType {
+ case widget.Box:
+ showDisable()
+ return
+ case widget.Button:
+ tk.setColorDisable()
+ return
+ default:
+ tk.dumpWidget("fixme: disable")
+ }
+}
- /*
- initTextbox()
+func (tk *guiWidget) Enable() {
+ if tk == nil {
+ log.Log(NOW, "widget is nil")
+ return
+ }
- tk.enable = true
- tk.node.State.Enable = true
- // log.Info("enable widget in gocui", tk.node.WidgetType, tk.node.ProgName())
- switch tk.node.WidgetType {
- case widget.Box:
- // log.Info("todo: un blank the window here")
- me.textbox.tk.Hide()
- me.textbox.active = false
- // log.Info("escaped from textbox")
- return
- case widget.Button:
- tk.restoreEnableColor()
- return
- default:
- tk.dumpWidget("fixme: enable")
- }
- */
+ switch tk.node.WidgetType {
+ case widget.Box:
+ hideDisable()
+ return
+ case widget.Button:
+ tk.restoreEnableColor()
+ return
+ default:
+ tk.dumpWidget("fixme: enable")
+ }
}