void (@NotNull Project project, @NotNull List<ShelvedChangeList> shelvedListsToDelete, @NotNull List<ShelvedChangeList> shelvedListsFromChanges, @NotNull List<ShelvedChange> selectedChanges, @NotNull List<ShelvedBinaryFile> selectedBinaryChanges) { List<ShelvedChange> changesToDelete = getChangesNotInLists(shelvedListsToDelete, selectedChanges); List<ShelvedBinaryFile> binariesToDelete = getBinariesNotInLists(shelvedListsToDelete, selectedBinaryChanges); ShelveChangesManager manager = ShelveChangesManager.getInstance(project); int fileListSize = binariesToDelete.size() + changesToDelete.size(); Map<ShelvedChangeList, Date> createdDeletedListsWithOriginalDates = manager.deleteShelves(shelvedListsToDelete, shelvedListsFromChanges, changesToDelete, binariesToDelete); if (!createdDeletedListsWithOriginalDates.isEmpty()) { showUndoDeleteNotification(project, shelvedListsToDelete, fileListSize, createdDeletedListsWithOriginalDates); } }