diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-15 21:16:57 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-04-15 21:16:57 (GMT) |
| commit | a0506495ad71a18ba2976d31d437dfd6bd8241f8 (patch) | |
| tree | 9a48cf745af2379fcd2a922b75807f34f6971bfe /src/game | |
| parent | 900e23128a16bd49d8929a232ac57fc7e30ad3f9 (diff) | |
| download | powder-a0506495ad71a18ba2976d31d437dfd6bd8241f8.zip powder-a0506495ad71a18ba2976d31d437dfd6bd8241f8.tar.gz | |
Simulation options
Diffstat (limited to 'src/game')
| -rw-r--r-- | src/game/GameController.cpp | 20 | ||||
| -rw-r--r-- | src/game/GameController.h | 5 | ||||
| -rw-r--r-- | src/game/GameView.cpp | 2 |
3 files changed, 22 insertions, 5 deletions
diff --git a/src/game/GameController.cpp b/src/game/GameController.cpp index 40d7501..cf100ea 100644 --- a/src/game/GameController.cpp +++ b/src/game/GameController.cpp @@ -59,6 +59,17 @@ public: } }; +class GameController::OptionsCallback: public ControllerCallback +{ + GameController * cc; +public: + OptionsCallback(GameController * cc_) { cc = cc_; } + virtual void ControllerExit() + { + //cc->gameModel->SetUser(cc->loginWindow->GetUser()); + } +}; + class GameController::SSaveCallback: public ControllerCallback { GameController * cc; @@ -108,7 +119,8 @@ GameController::GameController(): loginWindow(NULL), ssave(NULL), console(NULL), - tagsWindow(NULL) + tagsWindow(NULL), + options(NULL) { gameView = new GameView(); gameModel = new GameModel(); @@ -484,9 +496,11 @@ void GameController::OpenStamps() ui::Engine::Ref().ShowWindow(stamps->GetView()); } -void GameController::OpenDisplayOptions() +void GameController::OpenOptions() { - //TODO: Implement + options = new OptionsController(gameModel->GetSimulation(), new OptionsCallback(this)); + ui::Engine::Ref().ShowWindow(options->GetView()); + } void GameController::ShowConsole() diff --git a/src/game/GameController.h b/src/game/GameController.h index b9629ed..8f49668 100644 --- a/src/game/GameController.h +++ b/src/game/GameController.h @@ -15,6 +15,7 @@ #include "stamps/StampsController.h" //#include "cat/TPTScriptInterface.h" #include "cat/LuaScriptInterface.h" +#include "options/OptionsController.h" #include "Menu.h" using namespace std; @@ -36,6 +37,7 @@ private: ConsoleController * console; TagsController * tagsWindow; StampsController * stamps; + OptionsController * options; CommandInterface * commandInterface; public: class LoginCallback; @@ -44,6 +46,7 @@ public: class SSaveCallback; class TagsCallback; class StampsCallback; + class OptionsCallback; GameController(); ~GameController(); GameView * GetView(); @@ -77,7 +80,7 @@ public: void OpenSearch(); void OpenLogin(); void OpenTags(); - void OpenDisplayOptions(); + void OpenOptions(); void OpenRenderOptions(); void OpenSaveWindow(); void OpenStamps(); diff --git a/src/game/GameView.cpp b/src/game/GameView.cpp index d27230b..3c47568 100644 --- a/src/game/GameView.cpp +++ b/src/game/GameView.cpp @@ -169,7 +169,7 @@ GameView::GameView(): SimulationOptionAction(GameView * _v) { v = _v; } void ActionCallback(ui::Button * sender) { - v->c->OpenDisplayOptions(); + v->c->OpenOptions(); } }; simulationOptionButton = new ui::Button(ui::Point(Size.X-54, Size.Y-18), ui::Point(16, 16)); |
