CmPlatform.h 1011 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #pragma once
  2. #include "CmPrerequisites.h"
  3. namespace CamelotFramework
  4. {
  5. enum class CursorType
  6. {
  7. Arrow,
  8. Wait,
  9. IBeam,
  10. Help,
  11. Hand,
  12. SizeAll,
  13. SizeNESW,
  14. SizeNS,
  15. SizeNWSE,
  16. SizeWE
  17. };
  18. enum class NonClientAreaBorderType
  19. {
  20. TopLeft,
  21. Top,
  22. TopRight,
  23. Left,
  24. Right,
  25. BottomLeft,
  26. Bottom,
  27. BottomRight
  28. };
  29. enum class OSMouseButton
  30. {
  31. Left, Middle, Right, Count
  32. };
  33. struct CM_EXPORT OSPositionalInputButtonStates
  34. {
  35. OSPositionalInputButtonStates()
  36. {
  37. mouseButtons[0] = false;
  38. mouseButtons[1] = false;
  39. mouseButtons[2] = false;
  40. shift = false;
  41. ctrl = false;
  42. }
  43. bool mouseButtons[OSMouseButton::Count];
  44. bool shift, ctrl;
  45. };
  46. }
  47. //Bring in the specific platform's header file
  48. #if CM_PLATFORM == CM_PLATFORM_WIN32
  49. # include "Win32/CmPlatformImpl.h"
  50. #elif (CM_PLATFORM == CM_PLATFORM_LINUX)
  51. # include "GLX/CmPlatformImpl.h"
  52. #elif CM_PLATFORM == CM_PLATFORM_APPLE
  53. # include "OSX/CmPlatformImpl.h"
  54. #endif