Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/mainwindow.cc')
-rw-r--r--src/client/mainwindow.cc23
1 files changed, 16 insertions, 7 deletions
diff --git a/src/client/mainwindow.cc b/src/client/mainwindow.cc
index 607e503..8e7b2af 100644
--- a/src/client/mainwindow.cc
+++ b/src/client/mainwindow.cc
@@ -79,6 +79,9 @@ void MainWindow::resize()
// resize game window
mainwindow_gamewindow->set_size(size());
+
+ // resize mainmenu window
+ mainwindow_mainmenu->set_size(size());
}
void MainWindow::clear()
@@ -114,14 +117,20 @@ void MainWindow::draw()
} else {
mainwindow_clockwidget->set_mode(ClockInfoWidget::Clock24Hours);
}
-
- // FIXME - either draw one of the menus or draw the playerview
- if (ui::root()->active() || !core::game()->interactive() || !core::localcontrol() || (core::localplayer()->view() && !core::localplayer()->view()->menus().size())) {
- if (mainwindow_gamewindow->visible())
- mainwindow_gamewindow->hide();
- } else {
- if (!mainwindow_gamewindow->visible())
+
+ if (!mainwindow_mainmenu->visible()) {
+
+ if (!core::game()->interactive() || !core::localcontrol()) {
+ mainwindow_mainmenu->show();
+
+ } else if (mainwindow_gamewindow->hidden()) {
mainwindow_gamewindow->show();
+ }
+
+ } else {
+ if (mainwindow_gamewindow->visible()) {
+ mainwindow_gamewindow->hide();
+ }
}
}