Clone of Akilla's ac2d @ https://github.com/deregtd/AC2D

IWindowManager.h 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #ifndef IWINDOWMANAGER_H
  2. #define IWINDOWMANAGER_H
  3. class IWindowManager;
  4. #include "IWindow.h"
  5. class IWindowManager
  6. {
  7. public:
  8. virtual bool SetWidth( float NewWidth ) = 0;
  9. virtual float GetWidth() = 0;
  10. virtual bool SetHeight( float NewHeight ) = 0;
  11. virtual float GetHeight() = 0;
  12. virtual bool SetSize( float NewWidth, float NewHeight ) = 0;
  13. virtual bool AddWindow( IWindow & Window ) = 0;
  14. virtual bool RemoveWindow( IWindow & Window ) = 0;
  15. virtual IWindow * SetFocusedWindow( IWindow * Window ) = 0;
  16. virtual IWindow * GetFocusedWindow() = 0;
  17. virtual IWindow * GetWindowFromXY( float X, float Y ) = 0;
  18. virtual void OnRender( double TimeSlice ) = 0;
  19. virtual void OnClick( float X, float Y, unsigned long Button ) = 0;
  20. virtual void OnDoubleClick( float X, float Y, unsigned long Button ) = 0;
  21. virtual void OnMouseWheel( float X, float Y, unsigned long Button ) = 0;
  22. virtual void OnMouseDown( float X, float Y, unsigned long Button ) = 0;
  23. virtual void OnMouseUp( float X, float Y, unsigned long Button ) = 0;
  24. virtual void OnMouseMove( float X, float Y, unsigned long Button ) = 0;
  25. virtual void OnMouseEnter( float X, float Y, unsigned long Button ) = 0;
  26. virtual void OnMouseExit( float X, float Y, unsigned long Button ) = 0;
  27. virtual void OnKeyPress( unsigned long KeyCode ) = 0;
  28. virtual void OnKeyDown( unsigned long KeyCode ) = 0;
  29. virtual void OnKeyUp( unsigned long KeyCode ) = 0;
  30. };
  31. #endif