45 lines
1.1 KiB
Go
45 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"go.wit.com/log"
|
|
"go.wit.com/toolkits/tree"
|
|
"go.wit.com/widget"
|
|
)
|
|
|
|
func compareStrings(n *tree.Node, ss []string) {
|
|
}
|
|
|
|
// func (n *node) addText(a *widget.Action) {
|
|
func addText(n *tree.Node, a *widget.Action) {
|
|
var tk *guiWidget
|
|
tk = n.TK.(*guiWidget)
|
|
log.Log(ANDLABS, "addText() START with a.Value =", a.Value)
|
|
if tk == nil {
|
|
log.Log(ERROR, "addText error. tk == nil", n.State.ProgName, n.WidgetId)
|
|
return
|
|
}
|
|
log.Log(ANDLABS, "addText() Attempt on", n.WidgetType, "with", a.Value)
|
|
|
|
switch n.WidgetType {
|
|
case widget.Dropdown:
|
|
for i, s := range a.State.Strings {
|
|
log.Log(ANDLABS, "a.State.Strings =", i, s)
|
|
_, ok := n.Strings[s]
|
|
// If the key exists
|
|
if ok {
|
|
log.Log(ANDLABS, "string is already in the dropdown", i, s)
|
|
} else {
|
|
log.Log(ANDLABS, "adding new string to dropdown", i, s)
|
|
addDropdownName(n, s)
|
|
// TODO: make numbers
|
|
n.Strings[s] = 21
|
|
}
|
|
}
|
|
case widget.Combobox:
|
|
addComboboxName(n, widget.GetString(a.Value))
|
|
default:
|
|
log.Log(ERROR, "plugin Send() Don't know how to addText on", n.WidgetType, "yet", a.ActionType)
|
|
}
|
|
log.Log(ANDLABS, "addText() END with a.Value =", a.Value)
|
|
}
|