diff options
Diffstat (limited to 'src/client/entitymenu.h')
-rw-r--r-- | src/client/entitymenu.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/client/entitymenu.h b/src/client/entitymenu.h new file mode 100644 index 0000000..ac5a793 --- /dev/null +++ b/src/client/entitymenu.h @@ -0,0 +1,42 @@ +/* + client/entitymenu.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_CLIENT_ENTITYMENU_H__ +#define __INCLUDED_CLIENT_ENTITYMENU_H__ + +#include "core/entity.h" +#include "ui/container.h" +#include "ui/label.h" +#include "ui/window.h" + +namespace client +{ + +/// entity menus +class EntityMenu : public ui::Window +{ +public: + /// create a new menu + EntityMenu(ui::Widget *parent, const char * label = 0); + ~EntityMenu(); + + /// generate a menu from menu descriptions + void generate(core::Entity *entity, const char *menulabel); + + /// clear the current menu + void clear(); + +protected: + /// resize event + virtual void resize(); + +private: + ui::Container *menu_container; +}; + +} + +#endif // __INCLUDED_CLIENT_ENTITYMENU_H__ |