diff options
Diffstat (limited to 'engines/director/cast.h')
-rw-r--r-- | engines/director/cast.h | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/engines/director/cast.h b/engines/director/cast.h index 953c94c4c6..f304456e12 100644 --- a/engines/director/cast.h +++ b/engines/director/cast.h @@ -26,6 +26,7 @@ #include "common/rect.h" #include "common/substream.h" #include "director/archive.h" +#include "graphics/surface.h" namespace Director { @@ -44,16 +45,20 @@ enum CastType { kCastLingoScript = 11 }; -struct Cast { +class Cast { +public: CastType type; Common::Rect initialRect; Common::Rect boundingRect; Common::Array<Resource> children; + const Graphics::Surface *surface; + byte modified; }; -struct BitmapCast : Cast { +class BitmapCast : public Cast { +public: BitmapCast(Common::ReadStreamEndian &stream, uint16 version = 2); uint16 regX; @@ -72,7 +77,8 @@ enum ShapeType { kShapeLine }; -struct ShapeCast : Cast { +class ShapeCast : public Cast { +public: ShapeCast(Common::ReadStreamEndian &stream, uint16 version = 2); ShapeType shapeType; @@ -111,7 +117,8 @@ enum SizeType { kSizeLargest }; -struct TextCast : Cast { +class TextCast : public Cast { +public: TextCast(Common::ReadStreamEndian &stream, uint16 version = 2); SizeType borderSize; @@ -135,13 +142,15 @@ enum ButtonType { kTypeRadio }; -struct ButtonCast : TextCast { +class ButtonCast : public TextCast { +public: ButtonCast(Common::ReadStreamEndian &stream, uint16 version = 2); ButtonType buttonType; }; -struct ScriptCast : Cast { +class ScriptCast : public Cast { +public: ScriptCast(Common::ReadStreamEndian &stream, uint16 version = 2); uint32 id; |