aboutsummaryrefslogtreecommitdiff
path: root/common/system.h
diff options
context:
space:
mode:
authorAlexander Tkachev2016-06-03 17:44:26 +0600
committerAlexander Tkachev2016-08-24 16:07:55 +0600
commit7ff1f918084b8d41826ad869d8c9865e1d53e082 (patch)
treef9c876b13ae01a9c523ba059bed66c036ab343b9 /common/system.h
parent1c823b6c1d465bd894f7f37a963165ee009f35ea (diff)
downloadscummvm-rg350-7ff1f918084b8d41826ad869d8c9865e1d53e082.tar.gz
scummvm-rg350-7ff1f918084b8d41826ad869d8c9865e1d53e082.tar.bz2
scummvm-rg350-7ff1f918084b8d41826ad869d8c9865e1d53e082.zip
GUI: Add copyRectToOSD()
I was lazy to implement that in OpenGLGraphicsManager and I'm not sure it's implemented correctly in SurfaceSdlGraphicsManager, but it works for me.
Diffstat (limited to 'common/system.h')
-rw-r--r--common/system.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/common/system.h b/common/system.h
index 6d185d3075..64e4b927b3 100644
--- a/common/system.h
+++ b/common/system.h
@@ -1086,6 +1086,33 @@ public:
virtual void displayMessageOnOSD(const char *msg) = 0;
/**
+ * Blit a bitmap to the 'on screen display'.
+ *
+ * If the current pixel format has one byte per pixel, the graphics data
+ * uses 8 bits per pixel, using the palette specified via setPalette.
+ * If more than one byte per pixel is in use, the graphics data uses the
+ * pixel format returned by getScreenFormat.
+ *
+ * @param buf the buffer containing the graphics data source
+ * @param pitch the pitch of the buffer (number of bytes in a scanline)
+ * @param x the x coordinate of the destination rectangle
+ * @param y the y coordinate of the destination rectangle
+ * @param w the width of the destination rectangle
+ * @param h the height of the destination rectangle
+ *
+ * @note The specified destination rectangle must be completly contained
+ * in the visible screen space, and must be non-empty. If not, a
+ * backend may or may not perform clipping, trigger an assert or
+ * silently corrupt memory.
+ *
+ * @see updateScreen
+ * @see getScreenFormat
+ * @see copyRectToScreen
+ */
+
+ virtual void copyRectToOSD(const void *buf, int pitch, int x, int y, int w, int h) = 0;
+
+ /**
* Return the SaveFileManager, used to store and load savestates
* and other modifiable persistent game data. For more information,
* refer to the SaveFileManager documentation.