aboutsummaryrefslogtreecommitdiff
path: root/engines/gob/video.h
diff options
context:
space:
mode:
authorSven Hesse2006-04-18 09:59:18 +0000
committerSven Hesse2006-04-18 09:59:18 +0000
commitab48280f731cf65313b4bd57896e762eb04fbce9 (patch)
tree1646d50032b5c2bf2040cf4ae51f5ce9d50ee918 /engines/gob/video.h
parent4b59f6fbda912ccac9619d144d68536cb4d72834 (diff)
downloadscummvm-rg350-ab48280f731cf65313b4bd57896e762eb04fbce9.tar.gz
scummvm-rg350-ab48280f731cf65313b4bd57896e762eb04fbce9.tar.bz2
scummvm-rg350-ab48280f731cf65313b4bd57896e762eb04fbce9.zip
- I misunderstood Draw::initBigSprite(); fixed
- Changed Draw::spriteOperation() for blitting from/to/between and fillrecting to big sprites - Enabled drawing of text svn-id: r22001
Diffstat (limited to 'engines/gob/video.h')
-rw-r--r--engines/gob/video.h25
1 files changed, 23 insertions, 2 deletions
diff --git a/engines/gob/video.h b/engines/gob/video.h
index 58c6bdb3c2..02b9090cc9 100644
--- a/engines/gob/video.h
+++ b/engines/gob/video.h
@@ -90,6 +90,7 @@ public:
};
Video(class GobEngine *vm);
+ virtual ~Video() {};
int32 getRectSize(int16 width, int16 height, int16 flag, int16 mode);
SurfaceDesc *initSurfDesc(int16 vidMode, int16 width, int16 height, int16 flags);
void freeSurfDesc(SurfaceDesc * surfDesc);
@@ -101,8 +102,7 @@ public:
void drawLine(SurfaceDesc * dest, int16 x0, int16 y0, int16 x1, int16 y1,
int16 color);
void putPixel(int16 x, int16 y, int16 color, SurfaceDesc * dest);
- void drawLetter(unsigned char item, int16 x, int16 y, FontDesc * fontDesc, int16 color1,
- int16 color2, int16 transp, SurfaceDesc * dest);
+ void drawCircle(Video::SurfaceDesc *dest, int16 x, int16 y, int16 radius, int16 color);
void clearSurf(SurfaceDesc * dest);
void drawPackedSprite(byte *sprBuf, int16 width, int16 height, int16 x, int16 y,
int16 transp, SurfaceDesc * dest);
@@ -117,6 +117,9 @@ public:
void freeDriver(void);
void setHandlers();
+ virtual void drawLetter(int16 item, int16 x, int16 y, FontDesc * fontDesc,
+ int16 color1, int16 color2, int16 transp, SurfaceDesc * dest) = 0;
+
protected:
class VideoDriver *_videoDriver;
GobEngine *_vm;
@@ -124,6 +127,24 @@ protected:
char initDriver(int16 vidMode);
};
+class Video_v1 : public Video {
+public:
+ virtual void drawLetter(int16 item, int16 x, int16 y, FontDesc * fontDesc,
+ int16 color1, int16 color2, int16 transp, SurfaceDesc * dest);
+
+ Video_v1(GobEngine *vm);
+ virtual ~Video_v1() {};
+};
+
+class Video_v2 : public Video_v1 {
+public:
+ virtual void drawLetter(int16 item, int16 x, int16 y, FontDesc * fontDesc,
+ int16 color1, int16 color2, int16 transp, SurfaceDesc * dest);
+
+ Video_v2(GobEngine *vm);
+ virtual ~Video_v2() {};
+};
+
class VideoDriver {
public:
VideoDriver() {}