MacOpenGLWindow.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #ifndef MAC_OPENGL_WINDOW_H
  2. #define MAC_OPENGL_WINDOW_H
  3. #include "../CommonInterfaces/CommonWindowInterface.h"
  4. #define b3gDefaultOpenGLWindow MacOpenGLWindow
  5. class MacOpenGLWindow : public CommonWindowInterface
  6. {
  7. struct MacOpenGLWindowInternalData* m_internalData;
  8. public:
  9. MacOpenGLWindow();
  10. virtual ~MacOpenGLWindow();
  11. void init(int width, int height, const char* windowTitle);
  12. void closeWindow();
  13. void startRendering();
  14. void endRendering(); //swap buffers
  15. virtual bool requestedExit() const;
  16. virtual void setRequestExit();
  17. void getMouseCoordinates(int& x, int& y);
  18. void runMainLoop();
  19. virtual bool isModifierKeyPressed(int key);
  20. void setMouseButtonCallback(b3MouseButtonCallback mouseCallback);
  21. void setMouseMoveCallback(b3MouseMoveCallback mouseCallback);
  22. void setResizeCallback(b3ResizeCallback resizeCallback);
  23. void setKeyboardCallback(b3KeyboardCallback keyboardCallback);
  24. virtual b3MouseMoveCallback getMouseMoveCallback();
  25. virtual b3MouseButtonCallback getMouseButtonCallback();
  26. virtual b3ResizeCallback getResizeCallback();
  27. virtual b3WheelCallback getWheelCallback();
  28. b3KeyboardCallback getKeyboardCallback();
  29. void setWheelCallback(b3WheelCallback wheelCallback);
  30. float getRetinaScale() const;
  31. virtual void setAllowRetina(bool allow);
  32. virtual void createWindow(const b3gWindowConstructionInfo& ci);
  33. virtual float getTimeInSeconds();
  34. virtual int getWidth() const;
  35. virtual int getHeight() const;
  36. virtual void setRenderCallback(b3RenderCallback renderCallback);
  37. virtual void setWindowTitle(const char* title);
  38. int fileOpenDialog(char* filename, int maxNameLength);
  39. };
  40. #endif