don't allow opening a window multiple times, primarily the console

This commit is contained in:
scrawl 2012-11-08 19:34:54 +01:00
parent 2be60041f3
commit 3d7146cd50

View file

@ -772,6 +772,13 @@ void WindowManager::pushGuiMode(GuiMode mode)
if (mode==GM_Inventory && mAllowed==GW_None) if (mode==GM_Inventory && mAllowed==GW_None)
return; return;
// If this mode already exists somewhere in the stack, just bring it to the front.
if (std::find(mGuiModes.begin(), mGuiModes.end(), mode) != mGuiModes.end())
{
mGuiModes.erase(std::find(mGuiModes.begin(), mGuiModes.end(), mode));
}
mGuiModes.push_back(mode); mGuiModes.push_back(mode);
bool gameMode = !isGuiMode(); bool gameMode = !isGuiMode();