summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mouse.go30
-rw-r--r--widget.go2
2 files changed, 31 insertions, 1 deletions
diff --git a/mouse.go b/mouse.go
index 791f51e..e9b2db6 100644
--- a/mouse.go
+++ b/mouse.go
@@ -66,8 +66,38 @@ func showDDview() error {
return nil
}
+func makeDropdownView() {
+ if me.ddview != nil {
+ return
+ }
+ me.ddview = addDropdown()
+ // n.TK = initWidget(n)
+ var tk *guiWidget
+ tk = me.ddview.TK.(*guiWidget)
+ tk.gocuiSize.w0 = 20
+ tk.gocuiSize.w1 = 40
+ tk.gocuiSize.h0 = 10
+ tk.gocuiSize.h1 = 25
+ tk.v, _ = me.baseGui.SetView("ddview",
+ tk.gocuiSize.w0,
+ tk.gocuiSize.h0,
+ tk.gocuiSize.w1,
+ tk.gocuiSize.h1, 0)
+ if tk.v == nil {
+ return
+ }
+ tk.v.Wrap = true
+ tk.v.Frame = true
+ tk.v.Clear()
+ fmt.Fprint(tk.v, "example.com\nwit.com")
+ // SetVisible(me.ddview, true)
+}
+
func mouseUp(g *gocui.Gui, v *gocui.View) error {
var tk *guiWidget
+ if me.ddview == nil {
+ makeDropdownView()
+ }
tk = me.ddview.TK.(*guiWidget)
w, h := g.MousePosition()
diff --git a/widget.go b/widget.go
index 47b7fe2..d7b8de7 100644
--- a/widget.go
+++ b/widget.go
@@ -25,7 +25,6 @@ func initWidget(n *tree.Node) *guiWidget {
if n.WidgetType == widget.Root {
log.Log(INFO, "setupWidget() FOUND ROOT w.id =", n.WidgetId)
- // me.treeRoot = n
}
if n.WidgetType == widget.Grid {
@@ -166,6 +165,7 @@ func addDropdown() *tree.Node {
tk.frame = true
tk.labelN = "DropBox text"
+ tk.node = n
// copy the data from the action message
tk.node.State.Label = "DropBox"