Mercurial > fife-parpg
diff engine/core/video/video.i @ 654:5d6b1820b953
* Added the ability to change screen modes on the fly. This works both in OpenGL and SDL modes.
* Added IEngineChangeListener so the client can update the cameras viewport if the screen mode has been changed. I chose to do it this way because the engine has no way to know which camera it should update. It will be up to the client to do it.
* The cursor surface is now correctly freed when exiting.
* Added DeviceCaps::getNearestScreenMode() for the client to request a supported screen mode.
closes[t:315]
author | prock@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Thu, 21 Oct 2010 18:50:50 +0000 |
parents | 01acc9fc35ea |
children | e3140f01749d |
line wrap: on
line diff
--- a/engine/core/video/video.i Fri Oct 15 18:54:34 2010 +0000 +++ b/engine/core/video/video.i Thu Oct 21 18:50:50 2010 +0000 @@ -155,6 +155,7 @@ public: virtual ~RenderBackend(); virtual const std::string& getName() const = 0; + Image* getScreenImage() const { return m_screen; }; void captureScreen(const std::string& filename); SDL_Surface* getSurface(); @@ -258,6 +259,7 @@ void fillDeviceCaps(); std::vector<ScreenMode> getSupportedScreenModes() const; + ScreenMode getNearestScreenMode(uint16_t width, uint16_t height, uint16_t bpp, const std::string& renderer, bool fs) const; std::string getDriverName() const; std::vector<string> getAvailableDrivers() const; bool isHwSurfaceAvail() const;