11#include "../events/gui_event_dispatching.h"
19 class Scene :
public Sml::EventTarget
22 Scene(int32_t width, int32_t height);
27 void render(
const Sml::Rectangle<int32_t>& targetRegion);
28 void proccessEvent(Sml::Event* event);
30 virtual Sml::EventDispatchChain* buildEventDispatchChain(Sml::EventDispatchChain* chain)
override;
33 Sml::Rectangle<int32_t> getLayoutRegion()
const;
35 int32_t getWidth()
const;
36 void setWidth(int32_t width);
38 int32_t getHeight()
const;
39 void setHeight(int32_t height);
42 void setRoot(
Parent* root);
65 std::list<ContextMenu*> m_ContextMenus;
68 Component* findHitComponentInRoot(int32_t x, int32_t y);
69 void updateHoverOwner(
Component* newHoverOwner, int32_t mouseX, int32_t mouseY);
70 void updateFocusOwner(
Component* newFocusOwner);
71 void proccessKeyboardEvent(Sml::KeyEvent* keyEvent);
72 void proccessMouseEvent(Sml::MouseEvent* mouseEvent);