diff options
Diffstat (limited to 'src/filebrowser/FileBrowserActivity.cpp')
| -rw-r--r-- | src/filebrowser/FileBrowserActivity.cpp | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/src/filebrowser/FileBrowserActivity.cpp b/src/filebrowser/FileBrowserActivity.cpp index 558e78d..b8e18bf 100644 --- a/src/filebrowser/FileBrowserActivity.cpp +++ b/src/filebrowser/FileBrowserActivity.cpp @@ -13,6 +13,7 @@ #include "tasks/Task.h" #include "simulation/SaveRenderer.h" #include "dialogues/TextPrompt.h" +#include "dialogues/ConfirmPrompt.h" #include "dialogues/ErrorMessage.h" class Thumbnail; @@ -176,19 +177,28 @@ void FileBrowserActivity::SelectSave(SaveFile * file) void FileBrowserActivity::DeleteSave(SaveFile * file) { - remove(file->GetName().c_str()); - loadDirectory(directory, ""); + std::string deleteMessage = "Are you sure you want to delete " + file->GetDisplayName() + ".cps?"; + if (ConfirmPrompt::Blocking("Delete Save", deleteMessage)) + { + remove(file->GetName().c_str()); + loadDirectory(directory, ""); + } } void FileBrowserActivity::RenameSave(SaveFile * file) { std::string newName = TextPrompt::Blocking("Rename", "Change save name", file->GetDisplayName(), "", 0); - newName = directory + PATH_SEP + newName + ".cps"; - int ret = rename(file->GetName().c_str(), newName.c_str()); - if (ret) - ErrorMessage::Blocking("Error", "Could not rename file"); + if (newName.length()) + { + newName = directory + PATH_SEP + newName + ".cps"; + int ret = rename(file->GetName().c_str(), newName.c_str()); + if (ret) + ErrorMessage::Blocking("Error", "Could not rename file"); + else + loadDirectory(directory, ""); + } else - loadDirectory(directory, ""); + ErrorMessage::Blocking("Error", "No save name given"); } void FileBrowserActivity::loadDirectory(std::string directory, std::string search) @@ -246,6 +256,11 @@ void FileBrowserActivity::OnMouseDown(int x, int y, unsigned button) Exit(); } +void FileBrowserActivity::OnTryExit(ExitMethod method) +{ + Exit(); +} + void FileBrowserActivity::NotifyError(Task * task) { |
