PointClickEngine::UI::MenuInputHandler
Inherits Reference < Object
Handles input processing for menu systems
The MenuInputHandler centralizes all input logic for menus including:
- Keyboard navigation (arrow keys, Enter, Escape)
- Mouse interaction (hover, click)
- Input validation and filtering
- Navigation state management
Constructors
new
SourceInstance methods
input_repeat_delay
Sourceinput_repeat_delay=(input_repeat_delay : Float64)
Sourceinput_repeat_enabled
Sourceinput_repeat_enabled=(input_repeat_enabled : Bool)
Sourcelast_input_time
Sourcelast_input_time=(last_input_time : Float64)
Sourcemouse_clicked_this_frame
Sourcemouse_over_item?(item_bounds : RL::Rectangle) : Bool
Checks if mouse is hovering over a menu item
- item_bounds : Rectangle defining the menu item area
Returns: true if mouse is over the item
on_cancel
Sourceon_cancel=(on_cancel : Proc(Nil) | Nil)
Sourceon_mouse_hover
Sourceon_mouse_hover=(on_mouse_hover : Proc(Int32, Nil) | Nil)
Sourceon_select
Sourceon_select=(on_select : Proc(Int32, Nil) | Nil)
Sourcepoint_in_rect?(point : RL::Vector2, rect : RL::Rectangle) : Bool
Checks if a point is within a rectangular area
process_input(dt : Float64) : InputAction
Processes input for the current frame
- dt : Delta time since last frame
Returns: The input action that occurred this frame
process_item_interaction(item_index : Int32, item_bounds : RL::Rectangle, item_enabled : Bool = true) : Bool
Processes menu item interaction
- item_index : Index of the menu item
- item_bounds : Rectangle defining the menu item area
- item_enabled : Whether the item can be interacted with
Returns: true if the item was clicked
update_from_settings(settings : Hash(String, String))
Updates input configuration from settings