summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-04-22 18:49:16 -0500
committerJeff Carr <[email protected]>2025-04-22 18:49:16 -0500
commit4efbfa7a1dbbd3425f1ccf1a4ebeaf95305a3e57 (patch)
tree3c5b25ae2ea9688b6cd270d30a9d021af18fe171
parent9669a63c5d7a2ed5727b2c6b47095308edd002d5 (diff)
fixing textboxes
-rw-r--r--eventMouseClick.go3
-rw-r--r--eventMouseDrag.go10
-rw-r--r--textbox.go29
3 files changed, 27 insertions, 15 deletions
diff --git a/eventMouseClick.go b/eventMouseClick.go
index 0d46216..91b7465 100644
--- a/eventMouseClick.go
+++ b/eventMouseClick.go
@@ -27,7 +27,7 @@ func doMouseClick(w int, h int) {
// can't drag or do anything when dropdown or textbox are visible
for _, tk := range findByXY(w, h) {
if tk.WidgetId() == me.dropdown.wId {
- log.Info("got dropdwon click", w, h, tk.cuiName)
+ log.Info("got dropdown click", w, h, tk.cuiName)
tk.dropdownClicked(w, h)
return
}
@@ -107,6 +107,7 @@ func doMouseClick(w int, h int) {
tk.showDropdown()
return
case widget.Textbox:
+ log.Log(WARN, "TODO: textbox click")
tk.prepTextbox()
return
case widget.Label:
diff --git a/eventMouseDrag.go b/eventMouseDrag.go
index 62aa916..00e0e57 100644
--- a/eventMouseDrag.go
+++ b/eventMouseDrag.go
@@ -111,15 +111,7 @@ func (tk *guiWidget) moveNew() {
tk.makeWindowActive()
return
}
- /*
- if tk.WidgetType() == widget.Flag {
- me.baseGui.SetView(tk.cuiName, w-3, h-3, w+20, h+20, 0)
- // tk.verifyRect()
- s := fmt.Sprintf("move(%dx%d) %s ###", w, h, tk.cuiName)
- tk.dumpWidget(s)
- return
- }
- */
+
if tk.WidgetType() == widget.Stdout {
if me.mouse.resize {
newW := w - me.stdout.lastW
diff --git a/textbox.go b/textbox.go
index 73a8ed6..f385245 100644
--- a/textbox.go
+++ b/textbox.go
@@ -40,7 +40,7 @@ func initTextbox() {
func (callertk *guiWidget) prepTextbox() {
initTextbox()
if me.textbox.tk == nil {
- log.Log(GOCUI, "prepTextbox() Is Broken")
+ log.Log(WARN, "prepTextbox() Is Broken")
return
}
@@ -51,21 +51,39 @@ func (callertk *guiWidget) prepTextbox() {
r.w1 = r.w0 + 24
r.h1 = r.h0 + 2
me.textbox.tk.forceSizes(r)
- // me.textbox.tk.dumpWidget("after sizes")
+ me.textbox.tk.dumpWidget("after sizes")
me.textbox.callerTK = callertk
- // showTextbox(callertk.String())
+ /*
+ if me.textbox.tk.v != nil {
+ log.Log(WARN, "WARNING textbox DeleteView()")
+ log.Log(WARN, "WARNING textbox DeleteView()")
+ log.Log(WARN, "WARNING textbox DeleteView()")
+ me.baseGui.DeleteView(me.textbox.tk.cuiName)
+ time.Sleep(time.Second)
+ }
+ */
+
+ var err error
+ me.textbox.tk.v, err = me.baseGui.SetView(me.textbox.tk.cuiName, r.w0, r.h0, r.w1, r.h1, 0)
+ if err != nil {
+ log.Log(WARN, "textbox SetView() failed", err, "view name =", me.textbox.tk.cuiName)
+ return
+ }
+ // me.textbox.tk.Show() // actually makes the gocui view. TODO: redo this?
+ showTextbox(callertk.String())
}
func showTextbox(callers string) {
// tk := me.textbox.tk
// me.textbox.tk.dumpWidget("after sizes")
+ log.Log(WARN, "showTextbox() caller string =", callers)
// me.textbox.tk.Show() // actually makes the gocui view. TODO: redo this
if me.textbox.tk.v == nil {
- log.Info("wtf went wrong")
+ log.Log(WARN, "textbox.tk.v == nil showTextbox() is broken")
return
}
@@ -87,7 +105,8 @@ func showTextbox(callers string) {
me.textbox.active = true
- // me.textbox.dumpWidget("showTextbox()")
+ me.baseGui.SetViewOnTop(me.textbox.tk.v.Name())
+ me.textbox.tk.dumpWidget("showTextbox()")
}
func theCloseTheTextbox(g *gocui.Gui, v *gocui.View) error {