summaryrefslogtreecommitdiff
path: root/dropdown.go
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-02-08 16:15:38 -0600
committerJeff Carr <[email protected]>2025-02-08 16:15:38 -0600
commit419f4aef6a3c4bda7fd85e69853b24d2bfb0469f (patch)
tree90aa72cfd3dc780f610ff61b3c400c80245fb2f6 /dropdown.go
parent12d0e185ccc96d99c6d11d916797b0984c9fed68 (diff)
more work on the text entry
Diffstat (limited to 'dropdown.go')
-rw-r--r--dropdown.go23
1 files changed, 14 insertions, 9 deletions
diff --git a/dropdown.go b/dropdown.go
index e8ebd04..70aecb2 100644
--- a/dropdown.go
+++ b/dropdown.go
@@ -164,14 +164,13 @@ func (callertk *guiWidget) showTextbox() {
tk := me.textbox.tk
r := new(rectType)
// startW, startH := tk.Position()
- r.w0 = 50
- r.h0 = 20
+ r.w0 = callertk.gocuiSize.w0 + 4
+ r.h0 = callertk.gocuiSize.h0 + 3
r.w1 = r.w0 + 24
r.h1 = r.h0 + 2
me.textbox.tk.forceSizes(r)
me.textbox.tk.dumpWidget("after sizes")
- me.textbox.tk.labelN = "holy cow"
me.textbox.tk.Show() // actually makes the gocui view. TODO: redo this
if me.textbox.tk.v == nil {
@@ -196,19 +195,25 @@ func (callertk *guiWidget) showTextbox() {
// updates the text and sends an event back to the application
func (tk *guiWidget) textboxClosed() {
// get the text the user entered
- newname := "testing"
+ newtext := "testing"
if me.textbox.tk.v == nil {
- newname = "wtf"
+ newtext = ""
} else {
- newname = me.textbox.tk.v.ViewBuffer()
+ newtext = me.textbox.tk.v.ViewBuffer()
}
+ newtext = strings.TrimSpace(newtext)
me.textbox.active = false
tk.Hide()
- log.Info("textbox closed", newname)
+ log.Info("textbox closed", newtext)
+ if me.clock.tk.v != nil {
+ me.baseGui.SetCurrentView("help")
+ } else {
+ me.baseGui.SetCurrentView("msg")
+ }
// change the text of the caller widget
- me.textbox.callerTK.SetText(newname)
- me.textbox.callerTK.node.SetCurrentS(newname)
+ me.textbox.callerTK.SetText(newtext)
+ me.textbox.callerTK.node.SetCurrentS(newtext)
// send an event from the plugin with the new string
me.myTree.SendUserEvent(me.textbox.callerTK.node)