From 419f4aef6a3c4bda7fd85e69853b24d2bfb0469f Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sat, 8 Feb 2025 16:15:38 -0600 Subject: [PATCH] more work on the text entry --- dropdown.go | 23 ++++++++++++++--------- 1 file 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)