package gui import ( "go.wit.com/log" "go.wit.com/widget" ) // tracks dropdown and combobox entries. Makes sure they are unique func (n *Node) addText(newS string) { var highest int for s, i := range n.strings { if i > highest { highest = i } if s == newS { return } } n.strings[newS] = highest + 1 // TODO: use the int's for the order n.newString = newS // inform the toolkits sendAction(n, widget.AddText) } // add a new text string to widgets that support // multiple string values // These must be unique. return false if the string already exists func (n *Node) AddText(str string) bool { if !n.Ready() { return false } log.Log(INFO, "AddText() value =", str) log.Log(INFO, "AddText() value =", str) log.Log(INFO, "AddText() value =", str) // for some reason, the n.mu.Lock() doesn't seem to protect the append() function on strings // switched to a map. I suspect that is what maps are for because they are safer n.addText(str) return true }