Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/client/gamewindow.cc36
-rw-r--r--src/client/gamewindow.h2
-rw-r--r--src/client/keyboard.cc2
3 files changed, 27 insertions, 13 deletions
diff --git a/src/client/gamewindow.cc b/src/client/gamewindow.cc
index fb6c88d..2ad1db4 100644
--- a/src/client/gamewindow.cc
+++ b/src/client/gamewindow.cc
@@ -41,13 +41,16 @@ GameWindow::GameWindow(ui::Widget *parent) : ui::Window(parent)
// icon buttons
gamewindow_menubutton = new ui::IconButton(this, "bitmaps/icons/button_menu", "ui_menu");
- gamewindow_launchbutton = new ui::IconButton(this, "bitmaps/icons/button_launch", "launch");
- gamewindow_gotobutton = new TargetIconButton(this, "bitmaps/icons/button_goto", "goto");
- gamewindow_dockbutton = new TargetIconButton(this, "bitmaps/icons/button_dock", "dock", core::Entity::Dockable);
+ gamewindow_launchbutton = new ui::IconButton(this, "bitmaps/icons/button_launch", "launch");
- gamewindow_homebutton = new ui::IconButton(this, "bitmaps/icons/button_home", "view main");
+ gamewindow_freeflightbutton = new ui::IconButton(this, "bitmaps/icons/button_freeflight", "freeflight");
+ gamewindow_gotobutton = new TargetIconButton(this, "bitmaps/icons/button_goto", "goto");
+ gamewindow_dockbutton = new TargetIconButton(this, "bitmaps/icons/button_dock", "dock", core::Entity::Dockable);
+ gamewindow_formationbutton = new TargetIconButton(this, "bitmaps/icons/button_formation", "formation");
+
+ gamewindow_homebutton = new ui::IconButton(this, "bitmaps/icons/button_home", "view main");
gamewindow_chatbutton = new ui::IconButton(this, "bitmaps/icons/button_chat", "ui_chat");
- gamewindow_mapbutton = new ui::IconButton(this, "bitmaps/icons/button_map", "ui_map");
+ gamewindow_mapbutton = new ui::IconButton(this, "bitmaps/icons/button_map", "ui_map");
gamewindow_inventorybutton = new ui::IconButton(this, "bitmaps/icons/button_ship", "ui_inventory");
}
@@ -269,18 +272,21 @@ void GameWindow::resize()
// icons
const float icon_margin = 4.0f;
const float icon_size = 48.0f;
- const float icon_count = 8;
+ const float icon_count = 10;
const float l = (width() - ((icon_count + 1) * icon_margin) - (icon_count * icon_size)) * 0.5f;
gamewindow_menubutton->set_geometry(l, icon_margin, icon_size, icon_size);
// spacer
- gamewindow_gotobutton->set_geometry(l + 2.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
- gamewindow_dockbutton->set_geometry(l + 3.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_freeflightbutton->set_geometry(l + 2.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_gotobutton->set_geometry(l + 3.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_dockbutton->set_geometry(l + 4.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
gamewindow_launchbutton->set_geometry(l + 4.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
- gamewindow_homebutton->set_geometry(l + 5.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
- gamewindow_inventorybutton->set_geometry(l + 6.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
- gamewindow_chatbutton->set_geometry(l + 7.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
- gamewindow_mapbutton->set_geometry(l + 8.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_formationbutton->set_geometry(l + 5.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+
+ gamewindow_homebutton->set_geometry(l + 6.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_inventorybutton->set_geometry(l + 7.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_chatbutton->set_geometry(l + 8.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
+ gamewindow_mapbutton->set_geometry(l + 9.0f *(icon_margin + icon_size), icon_margin, icon_size, icon_size);
// reposition buy menu
gamewindow_buymenu->event_resize();
@@ -313,12 +319,18 @@ void GameWindow::draw()
if (core::localcontrol()->state() == core::Entity::Docked) {
gamewindow_launchbutton->show();
+
+ gamewindow_freeflightbutton->hide();
gamewindow_gotobutton->hide();
gamewindow_dockbutton->hide();
+ gamewindow_formationbutton->hide();
} else {
gamewindow_launchbutton->hide();
+
+ gamewindow_freeflightbutton->show();
gamewindow_gotobutton->show();
gamewindow_dockbutton->show();
+ gamewindow_formationbutton->show();
}
if (core::localplayer()->view()) {
diff --git a/src/client/gamewindow.h b/src/client/gamewindow.h
index 24bc311..158e6ea 100644
--- a/src/client/gamewindow.h
+++ b/src/client/gamewindow.h
@@ -92,9 +92,11 @@ private:
TradeMenu *gamewindow_trademenu;
ui::IconButton *gamewindow_menubutton;
+ ui::IconButton *gamewindow_freeflightbutton;
ui::IconButton *gamewindow_gotobutton;
ui::IconButton *gamewindow_dockbutton;
ui::IconButton *gamewindow_launchbutton;
+ ui::IconButton *gamewindow_formationbutton;
ui::IconButton *gamewindow_homebutton;
ui::IconButton *gamewindow_chatbutton;
ui::IconButton *gamewindow_mapbutton;
diff --git a/src/client/keyboard.cc b/src/client/keyboard.cc
index 43d4e7e..7658041 100644
--- a/src/client/keyboard.cc
+++ b/src/client/keyboard.cc
@@ -181,7 +181,7 @@ Keyboard::Keyboard()
add_key("f1", SDLK_F1);
add_key("f2", SDLK_F2, 0, "@goto");
add_key("f3", SDLK_F3, 0, "@dock");
- key = add_key("f4", SDLK_F4);
+ key = add_key("f4", SDLK_F4, 0, "@formation");
#ifdef _WIN32
key->assign(Key::Alt, "quit");
#endif