Store and restore caption and mouse visibility when using setMode (bug #142)

This commit is contained in:
Bart van Strien
2010-12-20 17:38:26 +01:00
parent 2131e016e7
commit 36226401bf
2 changed files with 14 additions and 0 deletions
+8
View File
@@ -117,6 +117,11 @@ namespace opengl
//do we have scissor, if so, store the box
if (s.scissor)
glGetIntegerv(GL_SCISSOR_BOX, s.scissorBox);
char *cap = 0;
SDL_WM_GetCaption(&cap, 0);
s.caption = cap;
s.mouseVisible = (SDL_ShowCursor(SDL_QUERY) == SDL_ENABLE) ? true : false;
return s;
}
@@ -136,6 +141,9 @@ namespace opengl
setScissor(s.scissorBox[0], s.scissorBox[1], s.scissorBox[2], s.scissorBox[3]);
else
setScissor();
setCaption(s.caption.c_str());
SDL_ShowCursor(s.mouseVisible ? SDL_ENABLE : SDL_DISABLE);
}
bool Graphics::setMode(int width, int height, bool fullscreen, bool vsync, int fsaa)
+6
View File
@@ -93,6 +93,10 @@ namespace opengl
bool scissor;
GLint scissorBox[4];
// Window info.
std::string caption;
bool mouseVisible;
// Default values.
DisplayState()
{
@@ -112,6 +116,8 @@ namespace opengl
pointSize = 1.0f;
pointStyle = Graphics::POINT_SMOOTH;
scissor = false;
caption = "";
mouseVisible = true;
}
};