diff options
-rw-r--r-- | gui.cpp | 4 | ||||
-rw-r--r-- | gui/dialog.cpp | 12 |
2 files changed, 10 insertions, 6 deletions
@@ -882,8 +882,8 @@ void Gui::getSavegameNames(int start) int i; _slotIndex = start; - for (i = 0; i < 9; i++, start++) { - valid_games[i] = _s->getSavegameName(start, game_names[i]); + for (i = 0; i < 9; i++) { + valid_games[i] = _s->getSavegameName(start + i, game_names[i]); } } diff --git a/gui/dialog.cpp b/gui/dialog.cpp index 1d37e7ef09..bee8037870 100644 --- a/gui/dialog.cpp +++ b/gui/dialog.cpp @@ -32,7 +32,10 @@ /* * TODO list - * - if save or load fails, popup an error dialog? + * - if save or load fails (e.g. due to disk full/directory write protected), + * display an error dialog? + * - The user can edit the name of the autosave game. Of course this will not + * do anything, but we should still prevent this. * ... */ @@ -293,7 +296,8 @@ SaveLoadDialog::SaveLoadDialog(NewGui *gui) addButton(200, 100, 54, 16, RES_STRING(8), kQuitCmd, 'Q'); // Quit _savegameList = new ListWidget(this, 10, 20, 180, 94); - + _savegameList->setNumberingMode(kListNumberingZero); + // Get savegame names ScummVM::StringList l; char name[32]; @@ -312,7 +316,7 @@ void SaveLoadDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 dat switch (cmd) { case kListItemChangedCmd: case kSaveCmd: - if (_savegameList->getSelected() > 0 && !_savegameList->getSelectedString().isEmpty()) { + if (_savegameList->getSelected() >= 1 && !_savegameList->getSelectedString().isEmpty()) { Scumm *s = _gui->getScumm(); s->_saveLoadSlot = _savegameList->getSelected(); s->_saveLoadCompatible = false; @@ -323,7 +327,7 @@ void SaveLoadDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 dat break; case kListItemDoubleClickedCmd: case kLoadCmd: - if (_savegameList->getSelected() > 0 && !_savegameList->getSelectedString().isEmpty()) { + if (_savegameList->getSelected() >= 0 && !_savegameList->getSelectedString().isEmpty()) { Scumm *s = _gui->getScumm(); s->_saveLoadSlot = _savegameList->getSelected(); s->_saveLoadCompatible = false; |