diff options
Diffstat (limited to 'engines/hdb/draw-manager.h')
-rw-r--r-- | engines/hdb/draw-manager.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/engines/hdb/draw-manager.h b/engines/hdb/draw-manager.h index ee53df47c9..1d1c5d6f42 100644 --- a/engines/hdb/draw-manager.h +++ b/engines/hdb/draw-manager.h @@ -33,7 +33,9 @@ enum { kTileWidth = 32, kTileHeight = 32, kMaxSkies = 10, - kNum3DStars = 300 + kNum3DStars = 300, + kFontSpace = 5, + kFontIncrement = 1 }; class Tile; @@ -60,6 +62,19 @@ struct GfxCache { GfxCache() : name(""), tileGfx(NULL), size(0), loaded(0) {} }; +struct FontInfo { + uint16 type; // 0 = mono, 1 = proportional + uint16 numChars; // how many characters in font + uint16 height; // height of entire font + uint16 kerning; // space between chars + uint16 leading; // space between lines +}; + +struct CharInfo { + uint16 width; // Character width in pixels + uint32 offset; // From the start of the font charInfo chunk +}; + class DrawMan { public: @@ -134,6 +149,17 @@ private: Picture *_starField[4]; Picture *_skyClouds; + // Cursor + int _cursorX, _cursorY; + + // Font Data + + FontInfo _fontHeader; + Common::Array<CharInfo *> _charInfoBlocks; + Graphics::Surface _fontSurfaces[256]; + uint16 _fontGfx; + int _eLeft, _eRight, _eTop, _eBottom; + bool _systemInit; }; |