diff options
| author | jacob1 <jfu614@gmail.com> | 2013-01-07 17:21:59 (GMT) |
|---|---|---|
| committer | jacob1 <jfu614@gmail.com> | 2013-01-07 17:21:59 (GMT) |
| commit | d8166998f85168b6635e53e2c46e234093ed55bf (patch) | |
| tree | 0b2d2463ebc1cc132a2e7236d240dd3e3c9bbec3 /src/filebrowser/FileBrowserActivity.cpp | |
| parent | 323dae959ad168b634599b27802fb03598305c81 (diff) | |
| download | powder-d8166998f85168b6635e53e2c46e234093ed55bf.zip powder-d8166998f85168b6635e53e2c46e234093ed55bf.tar.gz | |
confirm on local save delete, ESC to exit local save browser, don't allow empty save names
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) { |
