feat(ui): call onSelect in Select() function and make Next()/Previous() use that function
This commit is contained in:
parent
a1756549f9
commit
0bc5863284
1 changed files with 6 additions and 9 deletions
|
|
@ -29,7 +29,10 @@ func (menu Menu) Entries() []Widget {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (menu *Menu) Select(index int) {
|
func (menu *Menu) Select(index int) {
|
||||||
menu.selected = min(index, len(menu.entries)-1)
|
if index >= 0 && index < len(menu.entries) {
|
||||||
|
menu.selected = index
|
||||||
|
menu.onSelect()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (menu Menu) Selected() Widget {
|
func (menu Menu) Selected() Widget {
|
||||||
|
|
@ -41,17 +44,11 @@ func (menu Menu) IsSelected(index int) bool {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (menu *Menu) Next() {
|
func (menu *Menu) Next() {
|
||||||
if menu.selected+1 < len(menu.entries) {
|
menu.Select(menu.selected + 1)
|
||||||
menu.selected = menu.selected + 1
|
|
||||||
menu.onSelect()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (menu *Menu) Previous() {
|
func (menu *Menu) Previous() {
|
||||||
if menu.selected-1 >= 0 {
|
menu.Select(menu.selected - 1)
|
||||||
menu.selected = menu.selected - 1
|
|
||||||
menu.onSelect()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (menu *Menu) HandleInput() {
|
func (menu *Menu) HandleInput() {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue