00001 #ifndef GUI_H 00002 #define GUI_H 00003 00004 #include "irrlicht.h" 00005 00007 00013 class Gui 00014 { 00015 public: 00022 Gui(irr::IrrlichtDevice* d, irr::core::stringc name, irr::core::rect<irr::s32> position); 00023 00026 ~Gui(); 00027 00036 void addSlider(irr::s32 id, irr::core::stringw text, irr::s32 initialValue); 00037 00043 irr::s32 getSliderValue(irr::s32 id); 00044 00049 void addButton(irr::s32 id, irr::core::stringw text); 00050 00055 void addText(irr::s32 id, irr::core::stringw text); 00056 00059 void setVisible(bool visible); 00060 00063 bool isVisible(void); 00064 00068 irr::core::stringc getTextFromID(irr::s32 id); 00069 00074 void setTextFromID(irr::s32 id, irr::core::stringw text); 00075 00077 void bringToFront(void); 00078 00079 protected: 00080 00081 private: 00082 00083 irr::core::rect<irr::s32> getNextElementPos(irr::s32 height); 00084 void createRootWindow(irr::core::stringc name, irr::core::rect<irr::s32> position); 00085 bool idExists(irr::s32 id); 00086 00087 irr::IrrlichtDevice* device; 00088 irr::core::array<irr::gui::IGUIElement*> elements; 00089 irr::gui::IGUIWindow* window; 00090 }; 00091 00092 #endif // GUI_H