diff options
author | Paul Gilbert | 2006-08-30 11:48:43 +0000 |
---|---|---|
committer | Paul Gilbert | 2006-08-30 11:48:43 +0000 |
commit | e0d2b0764f22028e6c5ad0d7e4b73275c90e358e (patch) | |
tree | de7e40800cf7db0748fa1d78174629aba318bdbc /engines | |
parent | 1ba14890c65492d1d09fd272a37f1c7424023315 (diff) | |
download | scummvm-rg350-e0d2b0764f22028e6c5ad0d7e4b73275c90e358e.tar.gz scummvm-rg350-e0d2b0764f22028e6c5ad0d7e4b73275c90e358e.tar.bz2 scummvm-rg350-e0d2b0764f22028e6c5ad0d7e4b73275c90e358e.zip |
Added word wrapping to the status line (necessary when giving long sets of Tell instructions)
svn-id: r23809
Diffstat (limited to 'engines')
-rw-r--r-- | engines/lure/room.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/engines/lure/room.cpp b/engines/lure/room.cpp index fe53739dd7..be85e47430 100644 --- a/engines/lure/room.cpp +++ b/engines/lure/room.cpp @@ -441,7 +441,18 @@ void Room::update() { if (_hotspotId != 0) s.writeString(0, 0, _hotspotName, false, DIALOG_TEXT_COLOUR); } else { - s.writeString(0, 0, _statusLine, false, DIALOG_WHITE_COLOUR); + // Word wrap (if necessary) the status line and dispaly it + char *statusLineCopy = strdup(_statusLine); + char **lines; + uint8 numLines; + int16 yPos = 0; + s.wordWrap(statusLineCopy, s.width(), lines, numLines); + for (int lineNum = 0; lineNum < numLines; ++lineNum) { + s.writeString(0, yPos, lines[lineNum], false, DIALOG_WHITE_COLOUR); + yPos += FONT_HEIGHT; + } + Memory::dealloc(lines); + Memory::dealloc(statusLineCopy); } // If show information is turned on, show extra debugging information |