diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-08-03 16:09:34 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-08-03 16:09:34 (GMT) |
| commit | 2652309a3fc4748fa5d983754bc52a7a617898ed (patch) | |
| tree | 6cc254a438bdc92396f9c28bd22c43d248408313 /src/game/SignTool.cpp | |
| parent | 36b2aa01918344d91df30c4a6722ac39eaca0642 (diff) | |
| download | powder-2652309a3fc4748fa5d983754bc52a7a617898ed.zip powder-2652309a3fc4748fa5d983754bc52a7a617898ed.tar.gz | |
Nicer defaults for Window closing, Implement these with Sign tool, issue #51. Also set centre as default
Diffstat (limited to 'src/game/SignTool.cpp')
| -rw-r--r-- | src/game/SignTool.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/game/SignTool.cpp b/src/game/SignTool.cpp index 333646b..0ad755e 100644 --- a/src/game/SignTool.cpp +++ b/src/game/SignTool.cpp @@ -20,6 +20,7 @@ public: SignWindow(SignTool * tool_, Simulation * sim_, int signID_, ui::Point position_); virtual void OnDraw(); virtual ~SignWindow() {} + virtual void OnTryExit(ui::Window::ExitMethod method); class OkayAction: public ui::ButtonAction { public: @@ -75,6 +76,7 @@ SignWindow::SignWindow(SignTool * tool_, Simulation * sim_, int signID_, ui::Poi okayButton->Appearance.BorderInactive = (ui::Colour(200, 200, 200)); okayButton->SetActionCallback(new OkayAction(this)); AddComponent(okayButton); + SetOkayButton(okayButton); ui::Label * tempLabel = new ui::Label(ui::Point(8, 48), ui::Point(40, 15), "Justify:"); okayButton->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; @@ -86,7 +88,7 @@ SignWindow::SignWindow(SignTool * tool_, Simulation * sim_, int signID_, ui::Poi justification->AddOption(std::pair<std::string, int>("\x9D Left", (int)sign::Left)); justification->AddOption(std::pair<std::string, int>("\x9E Centre", (int)sign::Centre)); justification->AddOption(std::pair<std::string, int>("\x9F Right", (int)sign::Right)); - justification->SetOption(0); + justification->SetOption(1); justification->Appearance.HorizontalAlign = ui::Appearance::AlignLeft; textField = new ui::Textbox(ui::Point(8, 25), ui::Point(Size.X-16, 17), ""); @@ -110,6 +112,13 @@ SignWindow::SignWindow(SignTool * tool_, Simulation * sim_, int signID_, ui::Poi ui::Engine::Ref().ShowWindow(this); } + +void SignWindow::OnTryExit(ui::Window::ExitMethod method) +{ + ui::Engine::Ref().CloseWindow(); + SelfDestruct(); +} + void SignWindow::OnDraw() { Graphics * g = ui::Engine::Ref().g; |
