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.

Menu.h 905B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*!
  2. * \file include/Menu.h
  3. * \brief Menu 'overlay'
  4. *
  5. * \author xythobuz
  6. */
  7. #ifndef _MENU_H_
  8. #define _MENU_H_
  9. #include <memory>
  10. #include "utils/Folder.h"
  11. /*!
  12. * \brief Menu 'overlay'
  13. */
  14. class Menu {
  15. public:
  16. /*!
  17. * \brief Constructs an object of Menu
  18. */
  19. Menu();
  20. /*!
  21. * \brief Deconstructs an object of Menu
  22. */
  23. ~Menu();
  24. int initialize();
  25. int initialize(std::string folder);
  26. int initialize(Folder *folder);
  27. void setVisible(bool visible);
  28. bool isVisible();
  29. void display();
  30. void handleKeyboard(KeyboardButton key, bool pressed);
  31. void handleMouseClick(unsigned int x, unsigned int y, KeyboardButton button, bool released);
  32. void handleMouseScroll(int xrel, int yrel);
  33. private:
  34. void play();
  35. bool mVisible;
  36. long mCursor;
  37. long mMin;
  38. Folder *mapFolder;
  39. bool hiddenState;
  40. };
  41. Menu &getMenu();
  42. #endif