From 88af5cb15a02a26f4a5990ba3ef4df46e572bff4 Mon Sep 17 00:00:00 2001 From: Eugenio Favalli Date: Wed, 23 Jul 2008 17:23:30 +0000 Subject: Remember windows visibility. --- src/game.cpp | 13 +++++++++---- src/gui/buy.cpp | 1 + src/gui/itemshortcutwindow.cpp | 2 +- src/gui/sell.cpp | 1 + src/gui/window.cpp | 2 ++ 5 files changed, 14 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/game.cpp b/src/game.cpp index cc37fc5a..3489257a 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -212,10 +212,15 @@ void createGuiWindows(Network *network) //buddyWindow->setPosition(10, minimap->getHeight() + 30); // Set initial window visibility - chatWindow->setVisible(true); - miniStatusWindow->setVisible(true); - menuWindow->setVisible(true); - itemShortcutWindow->setVisible(true); + chatWindow->setVisible((bool) config.getValue( + chatWindow->getWindowName() + "Visible", true)); + miniStatusWindow->setVisible((bool) config.getValue( + miniStatusWindow->getWindowName() + "Visible", + true)); + menuWindow->setVisible((bool) config.getValue( + menuWindow->getWindowName() + "Visible", true)); + itemShortcutWindow->setVisible((bool) config.getValue( + itemShortcutWindow->getWindowName() + "Visible", true)); if (config.getValue("logToChat", 0)) { diff --git a/src/gui/buy.cpp b/src/gui/buy.cpp index 259fcfd9..4dee6813 100644 --- a/src/gui/buy.cpp +++ b/src/gui/buy.cpp @@ -42,6 +42,7 @@ BuyDialog::BuyDialog(Network *network): Window("Buy"), mNetwork(network), mMoney(0), mAmountItems(0), mMaxItems(0) { + setWindowName("Buy"); setResizable(true); setMinWidth(260); setMinHeight(230); diff --git a/src/gui/itemshortcutwindow.cpp b/src/gui/itemshortcutwindow.cpp index 3724516a..de1a23a1 100644 --- a/src/gui/itemshortcutwindow.cpp +++ b/src/gui/itemshortcutwindow.cpp @@ -30,7 +30,7 @@ static const int SCROLL_PADDING = 0; ItemShortcutWindow::ItemShortcutWindow() { - setWindowName("itemShortcut"); + setWindowName("ItemShortcut"); // no title presented, title bar is padding so window can be moved. gcn::Window::setTitleBarHeight(gcn::Window::getPadding()); setShowTitle(false); diff --git a/src/gui/sell.cpp b/src/gui/sell.cpp index 82d340fb..d13be2db 100644 --- a/src/gui/sell.cpp +++ b/src/gui/sell.cpp @@ -48,6 +48,7 @@ SellDialog::SellDialog(Network *network): mNetwork(network), mMaxItems(0), mAmountItems(0) { + setWindowName("Sell"); setResizable(true); setMinWidth(260); setMinHeight(230); diff --git a/src/gui/window.cpp b/src/gui/window.cpp index 4ce167cd..1c5072f5 100644 --- a/src/gui/window.cpp +++ b/src/gui/window.cpp @@ -137,6 +137,7 @@ Window::~Window() // Saving X, Y and Width and Height for resizables in the config config.setValue(name + "WinX", getX()); config.setValue(name + "WinY", getY()); + config.setValue(name + "Visible", isVisible()); if (mGrip) { @@ -476,6 +477,7 @@ Window::loadWindowState() setPosition((int) config.getValue(name + "WinX", mDefaultX), (int) config.getValue(name + "WinY", mDefaultY)); + setVisible((bool) config.getValue(name + "Visible", false)); if (mGrip) { -- cgit v1.2.3-70-g09d2