Clarify what is being deleted in Trash, fixes #5337

The message shown when deleting items in trash was ambiguous.
This commit is contained in:
Morgan Hardwood
2019-05-24 16:46:51 +02:00
parent c80a16f3b3
commit 853b198b1e
23 changed files with 72 additions and 84 deletions

View File

@@ -753,9 +753,9 @@ void FileBrowser::menuItemActivated (Gtk::MenuItem* m)
if (m == open) {
openRequested(mselected);
} else if (m == remove) {
tbl->deleteRequested (mselected, false);
tbl->deleteRequested (mselected, false, true);
} else if (m == removeInclProc) {
tbl->deleteRequested (mselected, true);
tbl->deleteRequested (mselected, true, true);
} else if (m == trash) {
toTrashRequested (mselected);
} else if (m == untrash) {

View File

@@ -43,7 +43,7 @@ public:
virtual void openRequested(const std::vector<Thumbnail*>& tbe) = 0;
virtual void developRequested(const std::vector<FileBrowserEntry*>& tbe, bool fastmode) = 0;
virtual void renameRequested(const std::vector<FileBrowserEntry*>& tbe) = 0;
virtual void deleteRequested(const std::vector<FileBrowserEntry*>& tbe, bool inclBatchProcessed) = 0;
virtual void deleteRequested(const std::vector<FileBrowserEntry*>& tbe, bool inclBatchProcessed, bool onlySelected) = 0;
virtual void copyMoveRequested(const std::vector<FileBrowserEntry*>& tbe, bool moveRequested) = 0;
virtual void selectionChanged(const std::vector<Thumbnail*>& tbe) = 0;
virtual void clearFromCacheRequested(const std::vector<FileBrowserEntry*>& tbe, bool leavenotrace) = 0;

View File

@@ -943,14 +943,19 @@ void FileCatalog::openRequested(const std::vector<Thumbnail*>& tmb)
);
}
void FileCatalog::deleteRequested(const std::vector<FileBrowserEntry*>& tbe, bool inclBatchProcessed)
void FileCatalog::deleteRequested(const std::vector<FileBrowserEntry*>& tbe, bool inclBatchProcessed, bool onlySelected)
{
if (tbe.empty()) {
return;
}
Gtk::MessageDialog msd (getToplevelWindow(this), M("FILEBROWSER_DELETEDLGLABEL"), true, Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_YES_NO, true);
msd.set_secondary_text(Glib::ustring::compose ( inclBatchProcessed ? M("FILEBROWSER_DELETEDLGMSGINCLPROC") : M("FILEBROWSER_DELETEDLGMSG"), tbe.size()), true);
Gtk::MessageDialog msd (getToplevelWindow(this), M("FILEBROWSER_DELETEDIALOG_HEADER"), true, Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_YES_NO, true);
if (onlySelected) {
msd.set_secondary_text(Glib::ustring::compose (inclBatchProcessed ? M("FILEBROWSER_DELETEDIALOG_SELECTEDINCLPROC") : M("FILEBROWSER_DELETEDIALOG_SELECTED"), tbe.size()), true);
} else {
msd.set_secondary_text(Glib::ustring::compose (M("FILEBROWSER_DELETEDIALOG_ALL"), tbe.size()), true);
}
if (msd.run() == Gtk::RESPONSE_YES) {
for (unsigned int i = 0; i < tbe.size(); i++) {
const auto fname = tbe[i]->filename;
@@ -1832,7 +1837,7 @@ void FileCatalog::emptyTrash ()
toDel.push_back (static_cast<FileBrowserEntry*>(t[i]));
}
deleteRequested (toDel, false);
deleteRequested (toDel, false, false);
trashChanged();
}

View File

@@ -204,7 +204,7 @@ public:
void filterApplied() override;
void openRequested(const std::vector<Thumbnail*>& tbe) override;
void deleteRequested(const std::vector<FileBrowserEntry*>& tbe, bool inclBatchProcessed) override;
void deleteRequested(const std::vector<FileBrowserEntry*>& tbe, bool inclBatchProcessed, bool onlySelected) override;
void copyMoveRequested(const std::vector<FileBrowserEntry*>& tbe, bool moveRequested) override;
void developRequested(const std::vector<FileBrowserEntry*>& tbe, bool fastmode) override;
void renameRequested(const std::vector<FileBrowserEntry*>& tbe) override;