feat: Implement comprehensive mouse event system
Implements multiple mouse event improvements for UI elements: - Mouse enter/exit events (#140): on_enter, on_exit callbacks and hovered property for all UIDrawable types (Frame, Caption, Sprite, Grid) - Headless click events (#111): Track simulated mouse position for automation testing in headless mode - Mouse move events (#141): on_move callback fires continuously while mouse is within element bounds - Grid cell events (#142): on_cell_enter, on_cell_exit, on_cell_click callbacks with cell coordinates (x, y), plus hovered_cell property Includes comprehensive tests for all new functionality. Closes #140, closes #111, closes #141, closes #142 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
6d5a5e9e16
commit
6c496b8732
14 changed files with 1353 additions and 27 deletions
|
|
@ -51,6 +51,12 @@ public:
|
|||
static sf::Keyboard::Key stringToKey(const std::string& keyName);
|
||||
static void sleep_ms(int milliseconds);
|
||||
|
||||
// #111 - Simulated mouse position for headless mode
|
||||
static sf::Vector2i getSimulatedMousePosition();
|
||||
|
||||
private:
|
||||
static GameEngine* getGameEngine();
|
||||
|
||||
// #111 - Track simulated mouse position for headless mode
|
||||
static sf::Vector2i simulated_mouse_pos;
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue