diff options
Diffstat (limited to 'backends/graphics')
-rw-r--r-- | backends/graphics/abstract-graphics.h | 15 | ||||
-rw-r--r-- | backends/graphics/sdl/sdl-graphics.h | 18 |
2 files changed, 25 insertions, 8 deletions
diff --git a/backends/graphics/abstract-graphics.h b/backends/graphics/abstract-graphics.h index c38f66c9ed..6037bb10e3 100644 --- a/backends/graphics/abstract-graphics.h +++ b/backends/graphics/abstract-graphics.h @@ -41,9 +41,16 @@ public: virtual int getDefaultGraphicsMode() const = 0; virtual bool setGraphicsMode(int mode) = 0; virtual int getGraphicsMode() const = 0; +#ifdef USE_RGB_COLOR virtual Graphics::PixelFormat getScreenFormat() const = 0; virtual Common::List<Graphics::PixelFormat> getSupportedFormats() = 0; +#endif virtual void initSize(uint width, uint height, const Graphics::PixelFormat *format = NULL) = 0; + virtual int getScreenChangeID() const = 0; + + virtual void beginGFXTransaction() = 0; + virtual OSystem::TransactionError endGFXTransaction() = 0; + virtual int16 getHeight() = 0; virtual int16 getWidth() = 0; virtual void setPalette(const byte *colors, uint start, uint num) = 0; @@ -54,6 +61,9 @@ public: virtual void fillScreen(uint32 col) = 0; virtual void updateScreen() = 0; virtual void setShakePos(int shakeOffset) = 0; + virtual void setFocusRectangle(const Common::Rect& rect) = 0; + virtual void clearFocusRectangle() = 0; + virtual void showOverlay() = 0; virtual void hideOverlay() = 0; virtual Graphics::PixelFormat getOverlayFormat() const = 0; @@ -62,9 +72,14 @@ public: virtual void copyRectToOverlay(const OverlayColor *buf, int pitch, int x, int y, int w, int h)= 0; virtual int16 getOverlayHeight() = 0; virtual int16 getOverlayWidth() = 0; + virtual bool showMouse(bool visible) = 0; virtual void warpMouse(int x, int y) = 0; virtual void setMouseCursor(const byte *buf, uint w, uint h, int hotspotX, int hotspotY, uint32 keycolor, int cursorTargetScale = 1, const Graphics::PixelFormat *format = NULL) = 0; + virtual void setCursorPalette(const byte *colors, uint start, uint num) = 0; + virtual void disableCursorPalette(bool disable) = 0; + + virtual void displayMessageOnOSD(const char *msg) {} }; #endif diff --git a/backends/graphics/sdl/sdl-graphics.h b/backends/graphics/sdl/sdl-graphics.h index 650b01794b..84935baaeb 100644 --- a/backends/graphics/sdl/sdl-graphics.h +++ b/backends/graphics/sdl/sdl-graphics.h @@ -81,17 +81,16 @@ public: int getDefaultGraphicsMode() const; bool setGraphicsMode(int mode); int getGraphicsMode() const; - #ifdef USE_RGB_COLOR - // Game screen virtual Graphics::PixelFormat getScreenFormat() const { return _screenFormat; } - - // Highest supported virtual Common::List<Graphics::PixelFormat> getSupportedFormats(); #endif + virtual void initSize(uint w, uint h, const Graphics::PixelFormat *format = NULL); + virtual int getScreenChangeID() const { return _screenChangeCount; } + void beginGFXTransaction(); OSystem::TransactionError endGFXTransaction(); - virtual void initSize(uint w, uint h, const Graphics::PixelFormat *format = NULL); + virtual int16 getHeight(); virtual int16 getWidth(); void setPalette(const byte *colors, uint start, uint num); @@ -102,14 +101,18 @@ public: void fillScreen(uint32 col); void updateScreen(); void setShakePos(int shakeOffset); + void setFocusRectangle(const Common::Rect& rect) {} + void clearFocusRectangle() {} + virtual void showOverlay(); virtual void hideOverlay(); virtual Graphics::PixelFormat getOverlayFormat() const { return _overlayFormat; } void clearOverlay(); void grabOverlay(OverlayColor *buf, int pitch); void copyRectToOverlay(const OverlayColor *buf, int pitch, int x, int y, int w, int h); - virtual int16 getOverlayHeight() { return _videoMode.overlayHeight; } - virtual int16 getOverlayWidth() { return _videoMode.overlayWidth; } + virtual int16 getOverlayHeight() { return _videoMode.overlayHeight; } + virtual int16 getOverlayWidth() { return _videoMode.overlayWidth; } + bool showMouse(bool visible); virtual void warpMouse(int x, int y); virtual void setMouseCursor(const byte *buf, uint w, uint h, int hotspotX, int hotspotY, uint32 keycolor, int cursorTargetScale = 1, const Graphics::PixelFormat *format = NULL); @@ -118,7 +121,6 @@ public: _cursorPaletteDisabled = disable; blitCursor(); } - virtual int getScreenChangeID() const { return _screenChangeCount; } #ifdef USE_OSD void displayMessageOnOSD(const char *msg); |