no more dropdownV
This commit is contained in:
parent
666d5ca52d
commit
eccec3ef1a
58
dropdown.go
58
dropdown.go
|
@ -81,26 +81,26 @@ 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 {
|
||||||
/*
|
/*
|
||||||
for i, s := range tk.node.Strings() {
|
var ddItems string
|
||||||
// log.Log(GOCUI, "showDropdown()", tk.String(), i, s)
|
for i, s := range tk.node.Strings() {
|
||||||
ddItems += s + "\n"
|
// log.Log(GOCUI, "showDropdown()", tk.String(), i, s)
|
||||||
}
|
ddItems += s + "\n"
|
||||||
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// log.Log(GOCUI, "new dropdown items should be set to:", ddItems)
|
// log.Log(GOCUI, "new dropdown items should be set to:", ddItems)
|
||||||
// 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 {
|
/*
|
||||||
log.Log(GOCUI, "mouseUp() dropdownV = nil")
|
if me.dropdownV == nil {
|
||||||
return
|
log.Log(GOCUI, "mouseUp() dropdownV = nil")
|
||||||
}
|
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,18 +188,20 @@ 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")
|
/*
|
||||||
tk := me.dropdownV
|
dtext := strings.Join(d.node.Strings(), "\n")
|
||||||
if dtoggle {
|
tk := me.dropdownV
|
||||||
// log.Log(GOCUI, "dropdownUnclicked() set visible=false")
|
if dtoggle {
|
||||||
tk.Hide()
|
// log.Log(GOCUI, "dropdownUnclicked() set visible=false")
|
||||||
dtoggle = false
|
tk.Hide()
|
||||||
tk.SetText("goodbye")
|
dtoggle = false
|
||||||
} else {
|
tk.SetText("goodbye")
|
||||||
// log.Log(GOCUI, "dropdownUnclicked() set visible=true")
|
} else {
|
||||||
tk.MoveToOffset(w+doffset, h)
|
// log.Log(GOCUI, "dropdownUnclicked() set visible=true")
|
||||||
tk.SetText(dtext)
|
tk.MoveToOffset(w+doffset, h)
|
||||||
tk.Show()
|
tk.SetText(dtext)
|
||||||
dtoggle = true
|
tk.Show()
|
||||||
}
|
dtoggle = true
|
||||||
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
|
@ -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 {
|
/*
|
||||||
log.Info("FIXME: MADE me.dropdownV AGAIN")
|
if me.dropdownV == nil {
|
||||||
me.dropdownV = makeDropdownView("addWidget() ddview help")
|
log.Info("FIXME: MADE me.dropdownV AGAIN")
|
||||||
}
|
me.dropdownV = makeDropdownView("addWidget() ddview help")
|
||||||
|
}
|
||||||
|
*/
|
||||||
// me.dropdownV.Show()
|
// me.dropdownV.Show()
|
||||||
} else {
|
} else {
|
||||||
me.baseGui.DeleteView("help")
|
me.baseGui.DeleteView("help")
|
||||||
|
|
2
help.go
2
help.go
|
@ -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",
|
||||||
|
|
62
structs.go
62
structs.go
|
@ -39,37 +39,37 @@ 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
|
||||||
PadW int `default:"1" dense:"0"` // pad spacing
|
PadW int `default:"1" dense:"0"` // pad spacing
|
||||||
PadH int `default:"1" dense:"0"` // pad spacing
|
PadH int `default:"1" dense:"0"` // pad spacing
|
||||||
WindowW int `default:"8" dense:"0"` // how far down to start Window or Tab headings
|
WindowW int `default:"8" dense:"0"` // how far down to start Window or Tab headings
|
||||||
WindowH int `default:"-1"` // how far down to start Window or Tab headings
|
WindowH int `default:"-1"` // how far down to start Window or Tab headings
|
||||||
TabW int `default:"5" dense:"0"` // how far down to start Window or Tab headings
|
TabW int `default:"5" dense:"0"` // how far down to start Window or Tab headings
|
||||||
TabH int `default:"1" dense:"0"` // how far down to start Window or Tab headings
|
TabH int `default:"1" dense:"0"` // how far down to start Window or Tab headings
|
||||||
WindowPadW int `default:"8" dense:"0"` // additional amount of space to put between window & tab widgets
|
WindowPadW int `default:"8" dense:"0"` // additional amount of space to put between window & tab widgets
|
||||||
TabPadW int `default:"4" dense:"0"` // additional amount of space to put between window & tab widgets
|
TabPadW int `default:"4" dense:"0"` // additional amount of space to put between window & tab widgets
|
||||||
GroupPadW int `default:"2" dense:"1"` // additional amount of space to indent on a group
|
GroupPadW int `default:"2" dense:"1"` // additional amount of space to indent on a group
|
||||||
BoxPadW int `default:"2" dense:"1"` // additional amount of space to indent on a box
|
BoxPadW int `default:"2" dense:"1"` // additional amount of space to indent on a box
|
||||||
GridPadW int `default:"2" dense:"1"` // additional amount of space to indent on a grid
|
GridPadW int `default:"2" dense:"1"` // additional amount of space to indent on a grid
|
||||||
RawW int `default:"1"` // the raw beginning of each window (or tab)
|
RawW int `default:"1"` // the raw beginning of each window (or tab)
|
||||||
RawH int `default:"5"` // the raw beginning of each window (or tab)
|
RawH int `default:"5"` // the raw beginning of each window (or tab)
|
||||||
FakeW int `default:"20"` // offset for the hidden widgets
|
FakeW int `default:"20"` // offset for the hidden widgets
|
||||||
padded bool // add space between things like buttons
|
padded bool // add space between things like buttons
|
||||||
bookshelf bool // do you want things arranged in the box like a bookshelf or a stack?
|
bookshelf bool // do you want things arranged in the box like a bookshelf or a stack?
|
||||||
canvas bool // if set to true, the windows are a raw canvas
|
canvas bool // if set to true, the windows are a raw canvas
|
||||||
menubar bool // for windows
|
menubar bool // for windows
|
||||||
stretchy bool // expand things like buttons to the maximum size
|
stretchy bool // expand things like buttons to the maximum size
|
||||||
margin bool // add space around the frames of windows
|
margin bool // add space around the frames of windows
|
||||||
writeMutex sync.Mutex // writeMutex protects writes to *guiWidget (it's global right now maybe)
|
writeMutex sync.Mutex // writeMutex protects writes to *guiWidget (it's global right now maybe)
|
||||||
fakefile *FakeFile // JUNK? used to attempt to write to the stdout window
|
fakefile *FakeFile // JUNK? used to attempt to write to the stdout window
|
||||||
dtoggle bool // is a dropdown or combobox currently active?
|
dtoggle bool // is a dropdown or combobox currently active?
|
||||||
showHelp bool // toggle boolean for the help menu (deprecate?)
|
showHelp bool // toggle boolean for the help menu (deprecate?)
|
||||||
ecount int // counts how many mouse and keyboard events have occurred
|
ecount int // counts how many mouse and keyboard events have occurred
|
||||||
supermouse bool // prints out every widget found while you move the mouse around
|
supermouse bool // prints out every widget found while you move the mouse around
|
||||||
depth int // used for listWidgets() debugging
|
depth int // used for listWidgets() debugging
|
||||||
}
|
}
|
||||||
|
|
||||||
// deprecate these
|
// deprecate these
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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 {
|
/*
|
||||||
me.dropdownV.drawView()
|
if w == me.dropdownV {
|
||||||
return
|
me.dropdownV.drawView()
|
||||||
}
|
return
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
// don't display fake widgets
|
// don't display fake widgets
|
||||||
if w.isFake {
|
if w.isFake {
|
||||||
|
|
Loading…
Reference in New Issue