Open Source Tomb Raider Engine
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*!
  2. * \file include/WindowGLUT.h
  3. * \brief GLUT windowing implementation
  4. *
  5. * \author xythobuz
  6. */
  7. #ifndef _WINDOW_GLUT_H_
  8. #define _WINDOW_GLUT_H_
  9. #include "Window.h"
  10. /*!
  11. * \brief GLUT windowing implementation
  12. */
  13. class WindowGLUT : public Window {
  14. public:
  15. WindowGLUT();
  16. virtual void setSize(unsigned int width, unsigned int height);
  17. virtual void setFullscreen(bool fullscreen);
  18. virtual void setMousegrab(bool grab);
  19. virtual int initialize();
  20. virtual void eventHandling();
  21. virtual void setTextInput(bool on);
  22. virtual void swapBuffersGL();
  23. private:
  24. static void reshapeCallback(int width, int height);
  25. static void keyboardCallback(unsigned char key, int x, int y);
  26. static void keyboardUpCallback(unsigned char key, int x, int y);
  27. static void specialCallback(int key, int x, int y);
  28. static void specialUpCallback(int key, int x, int y);
  29. static void mouseCallback(int button, int state, int x, int y);
  30. static void motionCallback(int x, int y);
  31. static void mouseWheelCallback(int wheel, int direction, int x, int y);
  32. static KeyboardButton convertAsciiButton(unsigned char key);
  33. static KeyboardButton convertKeyCode(int key);
  34. };
  35. #endif