aboutsummaryrefslogtreecommitdiff
path: root/engines/adl/graphics.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/adl/graphics.h')
-rw-r--r--engines/adl/graphics.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/adl/graphics.h b/engines/adl/graphics.h
index af34e80113..f05045a4dc 100644
--- a/engines/adl/graphics.h
+++ b/engines/adl/graphics.h
@@ -23,9 +23,10 @@
#ifndef ADL_PICTURE_H
#define ADL_PICTURE_H
+#include "common/rect.h"
+
namespace Common {
class SeekableReadStream;
-struct Point;
}
namespace Adl {
@@ -36,12 +37,16 @@ class GraphicsMan {
public:
virtual ~GraphicsMan() { }
virtual void drawPic(Common::SeekableReadStream &pic, const Common::Point &pos) = 0;
+ void clearScreen() const;
protected:
GraphicsMan(Display &display) : _display(display) { }
void drawLine(const Common::Point &p1, const Common::Point &p2, byte color) const;
Display &_display;
+
+private:
+ virtual byte getClearColor() const = 0;
};
// Used in hires1
@@ -53,6 +58,7 @@ public:
private:
void drawCornerPixel(Common::Point &p, byte color, byte bits, byte quadrant) const;
+ byte getClearColor() const { return 0x00; }
};
// Used in hires0 and hires2-hires4
@@ -66,13 +72,13 @@ protected:
void fillRow(Common::Point p, const byte pattern, const bool stopBit = false);
private:
- void clear();
void drawCorners(Common::SeekableReadStream &pic, bool yFirst);
void drawRelativeLines(Common::SeekableReadStream &pic);
void drawAbsoluteLines(Common::SeekableReadStream &pic);
virtual void fillRowLeft(Common::Point p, const byte pattern, const bool stopBit);
virtual void fillAt(Common::Point p, const byte pattern);
void fill(Common::SeekableReadStream &pic);
+ byte getClearColor() const { return 0xff; }
byte _color;
Common::Point _offset;