/* ui/menu.h This file is part of the Osirion project and is distributed under the terms of the GNU General Public License version 2 */ #ifndef __INCLUDED_UI_MENU_H__ #define __INCLUDED_UI_MENU_H__ #include "ui/bitmap.h" #include "ui/button.h" #include "ui/label.h" #include "ui/window.h" namespace ui { /// a menu container class Menu : public Window { public: /// create a new menu Menu(Window *parent, const char * label); ~Menu(); /// load a menu from ini/menus/label.ini void load(); void set_background(const char *texture); Label *add_label(char const * text=0); Button *add_button(char const *text=0, char const *command=0); protected: virtual void resize(); private: float menu_element_width; float menu_element_height; float menu_element_margin; Bitmap *menu_background; Window *menu_container; }; } #endif // __INCLUDED_UI_MENU_H__