MenuInput class acts as manager for menu input logic
Menu Controller class consumes input from inputreader
- opens / closes menu
MenuSelectionHandler class acts as manager UI selection logic
- must be present on the same transform as the SelectableUI components it controls
- must be present on the same transform as the SelectableUI or CC_Button components it controls
SelectableUIELement send messages to the MenuInput when a mouse is over them or selection has been moved onto them
SelectableUIELement send messages to the MenuSelectionHandler when a mouse is over them or selection has been moved onto them
- they find the MenuInput component by checking the root transform for children with the MenuInput class (can be refactored later)
- they find the MenuSelectionHandler component by checking the root transform for children with the MenuSelectionHandler class (can be refactored later)
Scenario goes as follows:
- mouse is over button one
- keyboard moves selection to button two
- user hits left mouse button without moving the mouse
- - without custom handling, system would submit on button two, which is not good. custom handling stops the submit action before it hits the button's onClick list.