diff options
author | Stijn Buys <ingar@osirion.org> | 2011-08-28 09:49:23 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2011-08-28 09:49:23 +0000 |
commit | 14b2372f1a74198ec4f485f9665ef0acc27ae5e3 (patch) | |
tree | 0d03c4c08f5b1134b9be05875a2a27148d64dedc /src/client/mainmenu.cc | |
parent | 8b9b47e71cfd3ca1a9c3b8f9574ab460c9a8f437 (diff) |
New base classes for cient menus.
Diffstat (limited to 'src/client/mainmenu.cc')
-rw-r--r-- | src/client/mainmenu.cc | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/client/mainmenu.cc b/src/client/mainmenu.cc new file mode 100644 index 0000000..5d1706d --- /dev/null +++ b/src/client/mainmenu.cc @@ -0,0 +1,53 @@ +/* + client/mainmenu.cc + This file is part of the Osirion project and is distributed under + the terms and conditions of the GNU General Public License version 2 +*/ + +#include "client/mainmenu.h" +#include "ui/paint.h" + +namespace client +{ + +MainMenu::MainMenu(ui::Widget *parent) : ui::Window(parent) +{ + // default main menus + mainmenu_mainmenu = 0; + mainmenu_gamemenu = 0; + mainmenu_joinmenu = 0; + + // default extra menus + mainmenu_optionsmenu = 0; + mainmenu_loadmenu = 0; + mainmenu_savemenu = 0; + mainmenu_connectmenu = 0; + + set_background(true); + set_label("mainmenu"); +} + +MainMenu::~MainMenu() +{ +} + +void MainMenu::show() +{ + ui::Widget::show(); +} + +void MainMenu::hide() +{ + ui::Widget::hide(); +} + +void MainMenu::draw_background() +{ + // we override draw_background instead of adding a ui::Bitmap child + // this simplifies child window managment + if (mainmenu_background.size()) { + ui::Paint::draw_bitmap(global_location(), size(), math::Color(), mainmenu_background); + } +} + +} // namespace client |