summaryrefslogtreecommitdiff
path: root/andlabs/combobox.go
diff options
context:
space:
mode:
Diffstat (limited to 'andlabs/combobox.go')
-rw-r--r--andlabs/combobox.go54
1 files changed, 31 insertions, 23 deletions
diff --git a/andlabs/combobox.go b/andlabs/combobox.go
index 0dd16c6..adfea36 100644
--- a/andlabs/combobox.go
+++ b/andlabs/combobox.go
@@ -5,10 +5,11 @@ import (
_ "go.wit.com/dev/andlabs/ui/winmanifest"
"go.wit.com/log"
- "go.wit.com/gui/widget"
+ "go.wit.com/gui/toolkits/tree"
)
-func (p *node) newCombobox(n *node) {
+func newCombobox(p, n *tree.Node) {
+ if notNew(n) { return }
newt := new(guiWidget)
cb := ui.NewEditableCombobox()
@@ -20,46 +21,53 @@ func (p *node) newCombobox(n *node) {
newt.val = make(map[int]string)
cb.OnChanged(func(spin *ui.EditableCombobox) {
- n.value = spin.Text()
+ n.SetValue(spin.Text())
log.Warn("combobox changed =" + spin.Text() + ".")
- n.doUserEvent()
+ me.myTree.DoUserEvent(n)
})
- n.tk = newt
- p.place(n)
+ n.TK = newt
+ place(p, n)
+ log.Warn("add combobox entries on create:", n.State.Strings)
+ log.Warn("add combobox entries on create:", n.State.Strings)
+ log.Warn("add combobox entries on create:", n.State.Strings)
// add the initial combobox entries
- for i, s := range n.strings {
- log.Warn("add combobox entries on create", n.progname, i, s)
- n.addComboboxName(s)
+ for i, s := range n.State.Strings {
+ log.Warn("add combobox entries on create", n.GetProgName(), i, s)
+ addComboboxName(n, s)
}
- cur := widget.GetString(n.value)
- log.Warn("add combobox: TODO: set default value on create", n.progname, cur)
- n.setComboboxName(cur)
+ cur := n.String()
+ log.Warn("add combobox: TODO: set default value on create", n.GetProgName(), cur)
+ setComboboxName(n, cur)
}
-func (n *node) addComboboxName(s string) {
- if ! n.ready() { return }
+func addComboboxName(n *tree.Node, s string) {
+ if ! ready(n) { return }
+ var tk *guiWidget
+ tk = n.TK.(*guiWidget)
log.Log(INFO, "addComboboxName()", n.WidgetId, "add:", s)
- n.tk.uiEditableCombobox.Append(s)
- if (n.tk.val == nil) {
+ tk.uiEditableCombobox.Append(s)
+ if (tk.val == nil) {
log.Log(INFO, "make map didn't work")
return
}
- n.tk.val[n.tk.c] = s
+ tk.val[tk.c] = s
// If this is the first menu added, set the dropdown to it
- if (n.tk.c == 0) {
+ if (tk.c == 0) {
log.Log(INFO, "THIS IS THE FIRST combobox", s)
- n.tk.uiEditableCombobox.SetText(s)
+ tk.uiEditableCombobox.SetText(s)
}
- n.tk.c = n.tk.c + 1
+ tk.c = tk.c + 1
}
-func (n *node) setComboboxName(s string) bool {
- if ! n.ready() { return false}
+func setComboboxName(n *tree.Node, s string) bool {
+ if ! ready(n) { return false}
+ var tk *guiWidget
+ tk = n.TK.(*guiWidget)
log.Log(INFO, "SetComboboxName()", n.WidgetId, ",", s)
- n.tk.uiEditableCombobox.SetText(s)
+ tk.uiEditableCombobox.SetText(s)
return false
}