Changed Combobox.Append() and Listbox.Append() to accept multiple strings in one call.
This commit is contained in:
parent
874a4b9271
commit
20dcc48bee
15
combobox.go
15
combobox.go
|
@ -2,6 +2,7 @@
|
||||||
package ui
|
package ui
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"sync"
|
"sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -34,15 +35,21 @@ func NewEditableCombobox(items ...string) *Combobox {
|
||||||
return newCombobox(true, items...)
|
return newCombobox(true, items...)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Append adds an item to the end of the Combobox's list.
|
// Append adds items to the end of the Combobox's list.
|
||||||
func (c *Combobox) Append(what string) (err error) {
|
func (c *Combobox) Append(what ...string) (err error) {
|
||||||
c.lock.Lock()
|
c.lock.Lock()
|
||||||
defer c.lock.Unlock()
|
defer c.lock.Unlock()
|
||||||
|
|
||||||
if c.created {
|
if c.created {
|
||||||
return c.sysData.append(what)
|
for i, s := range what {
|
||||||
|
err := c.sysData.append(s)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("error adding element %d in Combobox.Append() (%q): %v", i, s, err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
c.initItems = append(c.initItems, what)
|
c.initItems = append(c.initItems, what...)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
15
listbox.go
15
listbox.go
|
@ -2,6 +2,7 @@
|
||||||
package ui
|
package ui
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"sync"
|
"sync"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -25,15 +26,21 @@ func NewListbox(multiple bool, items ...string) (l *Listbox) {
|
||||||
return l
|
return l
|
||||||
}
|
}
|
||||||
|
|
||||||
// Append adds an item to the end of the Listbox's list.
|
// Append adds items to the end of the Listbox's list.
|
||||||
func (l *Listbox) Append(what string) (err error) {
|
func (l *Listbox) Append(what ...string) (err error) {
|
||||||
l.lock.Lock()
|
l.lock.Lock()
|
||||||
defer l.lock.Unlock()
|
defer l.lock.Unlock()
|
||||||
|
|
||||||
if l.created {
|
if l.created {
|
||||||
return l.sysData.append(what)
|
for i, s := range what {
|
||||||
|
err := l.sysData.append(s)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("error adding element %d in Listbox.Append() (%q): %v", i, s, err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
l.initItems = append(l.initItems, what)
|
l.initItems = append(l.initItems, what...)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -69,6 +69,8 @@ func myMain() {
|
||||||
i++
|
i++
|
||||||
}
|
}
|
||||||
doAdjustments()
|
doAdjustments()
|
||||||
|
cb1.Append("append multi 1", "append multi 2")
|
||||||
|
lb2.Append("append multi 1", "append multi 2")
|
||||||
s1 := NewVerticalStack(lb2, lb1)
|
s1 := NewVerticalStack(lb2, lb1)
|
||||||
s1.SetStretchy(0)
|
s1.SetStretchy(0)
|
||||||
s1.SetStretchy(1)
|
s1.SetStretchy(1)
|
||||||
|
@ -126,6 +128,8 @@ mainloop:
|
||||||
prog = 100
|
prog = 100
|
||||||
}
|
}
|
||||||
pbar.SetProgress(prog)
|
pbar.SetProgress(prog)
|
||||||
|
cb1.Append("append multi 1", "append multi 2")
|
||||||
|
lb2.Append("append multi 1", "append multi 2")
|
||||||
case <-decButton.Clicked:
|
case <-decButton.Clicked:
|
||||||
prog--
|
prog--
|
||||||
if prog < 0 {
|
if prog < 0 {
|
||||||
|
|
Loading…
Reference in New Issue