andlabs/addText.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)
}