set position of the window for multiple monitors

actorid
Sebastian Wick 12 years ago
parent e88040662e
commit 8bdc9ff3ae

@ -369,6 +369,7 @@ void OMW::Engine::prepareEngine (Settings::Manager & settings)
windowSettings.fullscreen = settings.getBool("fullscreen", "Video");
windowSettings.window_x = settings.getInt("resolution x", "Video");
windowSettings.window_y = settings.getInt("resolution y", "Video");
windowSettings.screen = settings.getInt("screen", "Video");
windowSettings.vsync = settings.getBool("vsync", "Video");
windowSettings.icon = "openmw.png";
std::string aa = settings.getString("antialiasing", "Video");

@ -266,11 +266,15 @@ void OgreRenderer::createWindow(const std::string &title, const WindowSettings&
params.insert(std::make_pair("FSAA", settings.fsaa));
params.insert(std::make_pair("vsync", settings.vsync ? "true" : "false"));
SDL_Rect display_bounds;
if(SDL_GetDisplayBounds(settings.screen, &display_bounds) != 0)
throw std::runtime_error("Couldn't get display bounds!");
// Create an application window with the following settings:
mSDLWindow = SDL_CreateWindow(
"OpenMW", // window title
SDL_WINDOWPOS_UNDEFINED, // initial x position
SDL_WINDOWPOS_UNDEFINED, // initial y position
display_bounds.x, // initial x position
display_bounds.y, // initial y position
settings.window_x, // width, in pixels
settings.window_y, // height, in pixels
SDL_WINDOW_SHOWN

@ -56,6 +56,7 @@ namespace OEngine
bool vsync;
bool fullscreen;
int window_x, window_y;
int screen;
std::string fsaa;
std::string icon;
};

Loading…
Cancel
Save