From f71dba822f42428f22741f183df9f1132fa9471c Mon Sep 17 00:00:00 2001 From: Bjørn Lindeijer Date: Wed, 3 Dec 2008 23:51:01 +0100 Subject: Disabled "Reset Windows" button when appropriate You shouldn't be able to press "Reset Windows" before the in-game windows have been created. Previously this would crash. --- src/gui/setup.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/gui/setup.cpp b/src/gui/setup.cpp index b8fdb7de..2c22a426 100644 --- a/src/gui/setup.cpp +++ b/src/gui/setup.cpp @@ -60,6 +60,10 @@ Setup::Setup(): x -= btn->getWidth() + 5; btn->setPosition(x, height - btn->getHeight() - 5); add(btn); + + // Disable this button when the windows aren't created yet + if (!strcmp(*curBtn, "Reset Windows")) + btn->setEnabled(statusWindow != NULL); } TabbedContainer *panel = new TabbedContainer(width, 5, 20, 45, 5, 3); @@ -116,6 +120,11 @@ void Setup::action(const gcn::ActionEvent &event) } else if (event.getId() == "Reset Windows") { + // Bail out if this action happens to be activated before the windows + // are created (though it should be disabled then) + if (!statusWindow) + return; + statusWindow->resetToDefaultSize(); minimap->resetToDefaultSize(); chatWindow->resetToDefaultSize(); -- cgit v1.2.3-70-g09d2