diff options
author | athrxx | 2011-07-04 19:51:01 +0200 |
---|---|---|
committer | athrxx | 2011-07-04 19:52:11 +0200 |
commit | 38d18a6e78e19d12a3d6e56fe5b92821354c3e08 (patch) | |
tree | 4bbbc981f7308f371be35df05c433dabc4c98e6d /engines/kyra/gui_v2.cpp | |
parent | 19fd9c066cedd7d3e2cc9d1494137766a0a65ceb (diff) | |
download | scummvm-rg350-38d18a6e78e19d12a3d6e56fe5b92821354c3e08.tar.gz scummvm-rg350-38d18a6e78e19d12a3d6e56fe5b92821354c3e08.tar.bz2 scummvm-rg350-38d18a6e78e19d12a3d6e56fe5b92821354c3e08.zip |
KYRA: fix ingame menu save slots
- long GMM save descriptions will be trimmed to fit the ingame menu save slots
- prevent writing beyond the right margin in Kyra 1 save slots
Diffstat (limited to 'engines/kyra/gui_v2.cpp')
-rw-r--r-- | engines/kyra/gui_v2.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/kyra/gui_v2.cpp b/engines/kyra/gui_v2.cpp index 0b82df8cd5..f086ef368f 100644 --- a/engines/kyra/gui_v2.cpp +++ b/engines/kyra/gui_v2.cpp @@ -457,6 +457,15 @@ void GUI_v2::setupSavegameNames(Menu &menu, int num) { Common::strlcpy(s, header.description.c_str(), 80); Util::convertISOToDOS(s); + // Trim long GMM save descriptions to fit our save slots + _screen->_charWidth = -2; + int fC = _screen->getTextWidth(s); + while (strlen(s) && fC > 240) { + s[strlen(s) - 1] = 0; + fC = _screen->getTextWidth(s); + } + _screen->_charWidth = 0; + menu.item[i].saveSlot = _saveSlots[i + _savegameOffset]; menu.item[i].enabled = true; delete in; |