no more dropdownV

This commit is contained in:
Jeff Carr 2025-02-01 18:48:08 -06:00
parent 666d5ca52d
commit eccec3ef1a
6 changed files with 78 additions and 70 deletions

View File

@ -81,12 +81,12 @@ func addDropdown() *tree.Node {
} }
func (tk *guiWidget) showDropdown() { func (tk *guiWidget) showDropdown() {
var ddItems string
// todo: fix this after switching to protobuf // todo: fix this after switching to protobuf
// var items []string // var items []string
// items = tk.node.State.Strings // items = tk.node.State.Strings
//for i, s := range items { //for i, s := range items {
/* /*
var ddItems string
for i, s := range tk.node.Strings() { for i, s := range tk.node.Strings() {
// log.Log(GOCUI, "showDropdown()", tk.String(), i, s) // log.Log(GOCUI, "showDropdown()", tk.String(), i, s)
ddItems += s + "\n" ddItems += s + "\n"
@ -97,10 +97,10 @@ func (tk *guiWidget) showDropdown() {
// sizeW, sizeH := tk.Size() // sizeW, sizeH := tk.Size()
// log.Log(GOCUI, "showDropdown() size W,H=", sizeW, sizeH) // log.Log(GOCUI, "showDropdown() size W,H=", sizeW, sizeH)
startW, startH := tk.Position() startW, startH := tk.Position()
// log.Log(GOCUI, "showDropdown() location W,H=", startW, startH) log.Log(GOCUI, "showDropdown() IS BROKEN W,H=", startW, startH)
me.dropdownV.MoveToOffset(startW+3, startH+2) // me.dropdownV.MoveToOffset(startW+3, startH+2)
me.dropdownV.labelN = ddItems // me.dropdownV.labelN = ddItems
me.dropdownV.Show() // me.dropdownV.Show()
} }
/* /*
@ -169,10 +169,12 @@ var doffset int = 5 // how many spaces over the dropdown menu should be fro
func dropdownUnclicked(w, h int) { func dropdownUnclicked(w, h int) {
var d *guiWidget var d *guiWidget
/*
if me.dropdownV == nil { if me.dropdownV == nil {
log.Log(GOCUI, "mouseUp() dropdownV = nil") log.Log(GOCUI, "mouseUp() dropdownV = nil")
return return
} }
*/
// examine everything under X & Y on the screen) // examine everything under X & Y on the screen)
for _, tk := range findByXY(w, h) { for _, tk := range findByXY(w, h) {
@ -186,6 +188,7 @@ func dropdownUnclicked(w, h int) {
return return
} }
// log.Log(GOCUI, "dropdownUnclicked()", d.node.Strings(), "end. now try to enable me.dropdownV") // log.Log(GOCUI, "dropdownUnclicked()", d.node.Strings(), "end. now try to enable me.dropdownV")
/*
dtext := strings.Join(d.node.Strings(), "\n") dtext := strings.Join(d.node.Strings(), "\n")
tk := me.dropdownV tk := me.dropdownV
if dtoggle { if dtoggle {
@ -200,4 +203,5 @@ func dropdownUnclicked(w, h int) {
tk.Show() tk.Show()
dtoggle = true dtoggle = true
} }
*/
} }

View File

@ -190,10 +190,12 @@ func theHelp(g *gocui.Gui, v *gocui.View) error {
if me.showHelp { if me.showHelp {
helplayout() helplayout()
me.showHelp = false me.showHelp = false
/*
if me.dropdownV == nil { if me.dropdownV == nil {
log.Info("FIXME: MADE me.dropdownV AGAIN") log.Info("FIXME: MADE me.dropdownV AGAIN")
me.dropdownV = makeDropdownView("addWidget() ddview help") me.dropdownV = makeDropdownView("addWidget() ddview help")
} }
*/
// me.dropdownV.Show() // me.dropdownV.Show()
} else { } else {
me.baseGui.DeleteView("help") me.baseGui.DeleteView("help")

View File

@ -24,7 +24,7 @@ import (
var helpText []string = []string{"KEYBINDINGS", var helpText []string = []string{"KEYBINDINGS",
"", "",
"?: toggle zhelp", "?: toggle help",
"S: super mouse", "S: super mouse",
"M: list all widgets positions", "M: list all widgets positions",
"L: list all widgets in tree form", "L: list all widgets in tree form",

View File

@ -39,7 +39,7 @@ type config struct {
startOutputW int // ? startOutputW int // ?
startOutputH int // ? startOutputH int // ?
helpLabel *gocui.View // ? helpLabel *gocui.View // ?
dropdownV *guiWidget // this is a floating widget that we show whenever the user clicks on a // dropdownV *guiWidget // this is a floating widget that we show whenever the user clicks on a
dropdownW *guiWidget // grab the dropdown choices from this widget dropdownW *guiWidget // grab the dropdown choices from this widget
FramePadW int `default:"1" dense:"0"` // When the widget has a frame, like a button, it adds 2 lines runes on each side FramePadW int `default:"1" dense:"0"` // When the widget has a frame, like a button, it adds 2 lines runes on each side
FramePadH int `default:"1" dense:"0"` // When the widget has a frame, like a button, it adds 2 lines runes on each side FramePadH int `default:"1" dense:"0"` // When the widget has a frame, like a button, it adds 2 lines runes on each side

View File

@ -52,9 +52,9 @@ func addWidget(n *tree.Node) {
wRoot.redoWindows(0, 0) wRoot.redoWindows(0, 0)
// TODO: record the first window here? // TODO: record the first window here?
// do initial setup of helper widgets here: // do initial setup of helper widgets here:
if me.dropdownV == nil { // if me.dropdownV == nil {
// me.dropdownV = makeDropdownView("addWidget() ddview2") // me.dropdownV = makeDropdownView("addWidget() ddview2")
} // }
return return
case widget.Tab: case widget.Tab:
nw.color = &colorTab nw.color = &colorTab

View File

@ -105,10 +105,12 @@ func (tk *guiWidget) Visible() bool {
func (w *guiWidget) Show() { func (w *guiWidget) Show() {
// always should the dropdown widget // always should the dropdown widget
/*
if w == me.dropdownV { if w == me.dropdownV {
me.dropdownV.drawView() me.dropdownV.drawView()
return return
} }
*/
// don't display fake widgets // don't display fake widgets
if w.isFake { if w.isFake {