diff options
author | Filippos Karapetis | 2012-06-07 11:26:32 +0300 |
---|---|---|
committer | Filippos Karapetis | 2012-06-07 11:27:59 +0300 |
commit | de3f6a19ed6ca98ad152f5038c1db1f70f2c72ed (patch) | |
tree | 62b222498622c657785c44bbd64b2db0e374d6c6 /engines/sci/graphics/text32.h | |
parent | e73f93e565fc0074da66429fd59db25114f84c12 (diff) | |
download | scummvm-rg350-de3f6a19ed6ca98ad152f5038c1db1f70f2c72ed.tar.gz scummvm-rg350-de3f6a19ed6ca98ad152f5038c1db1f70f2c72ed.tar.bz2 scummvm-rg350-de3f6a19ed6ca98ad152f5038c1db1f70f2c72ed.zip |
SCI: Initial implementation of kScrollWindow, used in some SCI21 games
This is used in LSL6 hires and SQ6. This initial implementation is hackish
and only works in SQ6 (nothing is shown in LSL6)
Diffstat (limited to 'engines/sci/graphics/text32.h')
-rw-r--r-- | engines/sci/graphics/text32.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/sci/graphics/text32.h b/engines/sci/graphics/text32.h index 3505de85eb..ce78003fdf 100644 --- a/engines/sci/graphics/text32.h +++ b/engines/sci/graphics/text32.h @@ -33,13 +33,17 @@ public: GfxText32(SegManager *segMan, GfxCache *fonts, GfxScreen *screen); ~GfxText32(); reg_t createTextBitmap(reg_t textObject, uint16 maxWidth = 0, uint16 maxHeight = 0, reg_t prevHunk = NULL_REG); - void disposeTextBitmap(reg_t hunkId); + reg_t createScrollTextBitmap(Common::String text, reg_t textObject, uint16 maxWidth = 0, uint16 maxHeight = 0, reg_t prevHunk = NULL_REG); void drawTextBitmap(int16 x, int16 y, Common::Rect planeRect, reg_t textObject); + void drawScrollTextBitmap(reg_t textObject, reg_t hunkId, uint16 x, uint16 y); + void disposeTextBitmap(reg_t hunkId); int16 GetLongest(const char *text, int16 maxWidth, GfxFont *font); void kernelTextSize(const char *text, int16 font, int16 maxWidth, int16 *textWidth, int16 *textHeight); private: + reg_t createTextBitmapInternal(Common::String &text, reg_t textObject, uint16 maxWidth, uint16 maxHeight, reg_t hunkId); + void drawTextBitmapInternal(int16 x, int16 y, Common::Rect planeRect, reg_t textObject, reg_t hunkId); int16 Size(Common::Rect &rect, const char *text, GuiResourceId fontId, int16 maxWidth); void Width(const char *text, int16 from, int16 len, GuiResourceId orgFontId, int16 &textWidth, int16 &textHeight, bool restoreFont); void StringWidth(const char *str, GuiResourceId orgFontId, int16 &textWidth, int16 &textHeight); |