Changeset View
Changeset View
Standalone View
Standalone View
binaries/data/mods/public/gui/loadgame/functions_utility_loadsave.js
Show All 34 Lines | |||||
function hasSameEngineVersion(metadata, engineInfo) | function hasSameEngineVersion(metadata, engineInfo) | ||||
{ | { | ||||
return metadata.engine_version && metadata.engine_version == engineInfo.engine_version; | return metadata.engine_version && metadata.engine_version == engineInfo.engine_version; | ||||
} | } | ||||
function deleteGame() | function deleteGame() | ||||
{ | { | ||||
let gameSelection = Engine.GetGUIObjectByName("gameSelection"); | let gameSelection = Engine.GetGUIObjectByName("gameSelection"); | ||||
let gameID = gameSelection.list_data[gameSelection.selected]; | |||||
if (!gameID) | let toDelete = []; | ||||
return; | let toDeleteNames = []; | ||||
for (let selected of gameSelection.multiSelected) | |||||
{ | |||||
toDelete.push(gameSelection.list_data[selected]); | |||||
toDeleteNames.push(gameSelection.list[selected]); | |||||
} | |||||
if (Engine.HotkeyIsPressed("session.savedgames.noconfirmation")) | if (Engine.HotkeyIsPressed("session.savedgames.noconfirmation")) | ||||
reallyDeleteGame(gameID); | reallyDeleteGame(toDelete); | ||||
else | else | ||||
messageBox( | messageBox( | ||||
500, 200, | 500, 200, | ||||
sprintf(translate("\"%(label)s\""), { | sprintf(translate("\"%(label)s\""), { | ||||
"label": gameSelection.list[gameSelection.selected] | "label": toDeleteNames.join("\n") | ||||
}) + "\n" + translate("Saved game will be permanently deleted, are you sure?"), | }) + "\n" + | ||||
translatePlural( | |||||
"Saved game will be permanently deleted, are you sure?", | |||||
"Saved games will be permanently deleted, are you sure?", | |||||
toDeleteNames.length), | |||||
translate("DELETE"), | translate("DELETE"), | ||||
[translate("No"), translate("Yes")], | [translate("No"), translate("Yes")], | ||||
[null, function(){ reallyDeleteGame(gameID); }] | [null, () => { reallyDeleteGame(toDelete); }]); | ||||
); | |||||
} | } | ||||
function reallyDeleteGame(gameID) | function reallyDeleteGame(gameID) | ||||
{ | { | ||||
for (let gameID of gameIDs) | |||||
if (!Engine.DeleteSavedGame(gameID)) | if (!Engine.DeleteSavedGame(gameID)) | ||||
error("Could not delete saved game: " + gameID); | error("Could not delete saved game: " + gameID); | ||||
updateSavegameList(); | updateSavegameList(); | ||||
} | } | ||||
function deleteTooltip() | function deleteTooltip() | ||||
{ | { | ||||
let tooltip = colorizeHotkey( | let tooltip = colorizeHotkey( | ||||
translate("Delete the selected entry using %(hotkey)s."), | translate("Delete the selected entry using %(hotkey)s."), | ||||
Show All 9 Lines |
Wildfire Games · Phabricator