Add a partial listbox implementation

This commit is contained in:
2020-04-01 01:38:42 +01:00
parent 31da40e772
commit 7935f78acc
6 changed files with 241 additions and 53 deletions

View File

@@ -39,11 +39,15 @@ type mainButton struct {
}
func registerSimpleButton(d *Driver, r *menus.Record) error {
return registerButton(d, r, r.SpriteId[0])
_, err := registerButton(d, r, r.SpriteId[0])
return err
}
func registerInvokeButton(d *Driver, r *menus.Record) error {
return registerButton(d, r, r.Share)
_, err := registerButton(d, r, r.Share)
return err
}
func registerMainButton(d *Driver, r *menus.Record) error {
@@ -99,10 +103,10 @@ func registerDoorHotspot(d *Driver, r *menus.Record) error {
}
func registerButton(d *Driver, r *menus.Record, spriteId int) error {
func registerButton(d *Driver, r *menus.Record, spriteId int) (*button, error) {
sprites, err := d.menu.Sprites(spriteId, 3) // base, pressed, disabled
if err != nil {
return err
return nil, err
}
btn := &button{
@@ -118,7 +122,7 @@ func registerButton(d *Driver, r *menus.Record, spriteId int) error {
d.hoverables = append(d.hoverables, btn)
d.paintables = append(d.paintables, btn)
return nil
return btn, nil
}
func (b *button) id() string {