Add stubs for unknown widget types

This commit is contained in:
2020-03-25 00:23:28 +00:00
parent b986359047
commit 7824396c24
4 changed files with 83 additions and 2 deletions

View File

@@ -14,6 +14,8 @@ func init() {
}
// A button without hover animation
// FIXME: Keyboard.mnu has TypeSimpleButton instances that seem to include a
// hover in the SpriteId field
type button struct {
path string
@@ -34,6 +36,11 @@ type mainButton struct {
}
func registerSimpleButton(d *Driver, r *menus.Record) error {
// FIXME: LevelPly.mnu specifies a menu oddly. This tweak gets us past it
if d.Name == "levelply" && r.Id == 2 {
return nil
}
return registerButton(d, r, r.SpriteId[0])
}

View File

@@ -15,7 +15,42 @@ import (
func init() {
// These menu types don't need driving, so we can ignore them
registerBuilder(menus.TypeMenu, nil) // Menus are just containers
registerBuilder(menus.TypeMenu, nil) // Menus are just containers
registerBuilder(menus.TypeDragMenu, nil) // Menus are just containers
// FIXME: these need implementing
// Needed for Keyboard.mnu (main -> options -> keyboard)
registerBuilder(menus.TypeLineKbd, nil)
registerBuilder(menus.TypeDialogue, nil)
// Needed for Arrange.mnu (???)
registerBuilder(menus.TypeSquadButton, nil)
registerBuilder(menus.TypeAnimationToo, nil)
// Needed for Bridge.mnu
registerBuilder(menus.TypeDoorHotspot, nil)
// Needed for Briefing.mnu
registerBuilder(menus.TypeLineBriefing, nil)
// Needed for ChaEquip.mnu
registerBuilder(menus.TypeUnknown1, nil)
registerBuilder(menus.TypeThumb, nil)
registerBuilder(menus.TypeInventorySelect, nil)
// Needed for MainGameChaos.mnu
registerBuilder(menus.TypeStatusBar, nil)
// Needed for Multiplayer_Choose.mnu
registerBuilder(menus.TypeComboBoxItem, nil)
registerBuilder(menus.TypeDropdownButton, nil)
// Needed for Multiplayer_Configure.mnu
registerBuilder(menus.TypeEditBox, nil)
// Needed for Multiplayer_Connect.mnu
registerBuilder(menus.TypeRadioButton, nil)
}
const (