Context menu for images: support deletion

Adding modified code to support deletion of selected images as
well as deleting of all images (with warning messagebox)

Signed-off-by: Guido Lerch <guido.lerch@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Guido Lerch 2015-10-20 21:08:59 +02:00 committed by Dirk Hohndel
parent eb6d5415c1
commit 951e3d920b
2 changed files with 23 additions and 3 deletions

View file

@ -1556,12 +1556,31 @@ void MainTab::photoDoubleClicked(const QString filePath)
void MainTab::removeSelectedPhotos()
{
bool last = false;
if (!ui.photosView->selectionModel()->hasSelection())
return;
QModelIndexList indexes = ui.photosView->selectionModel()->selectedRows();
if (indexes.count() == 0)
indexes = ui.photosView->selectionModel()->selectedIndexes();
QModelIndex photo = indexes.first();
do {
photo = indexes.first();
last = indexes.count() == 1;
if (photo.isValid()) {
QString fileUrl = photo.data(Qt::DisplayPropertyRole).toString();
if (fileUrl.length() > 0)
DivePictureModel::instance()->removePicture(fileUrl, last);
}
indexes.removeFirst();
} while(!indexes.isEmpty());
}
QModelIndex photoIndex = ui.photosView->selectionModel()->selectedIndexes().first();
QString fileUrl = photoIndex.data(Qt::DisplayPropertyRole).toString();
DivePictureModel::instance()->removePicture(fileUrl);
void MainTab::removeAllPhotos()
{
if (QMessageBox::warning(this, tr("Deleting Images"), tr("Are you sure you want to delete all images?"), QMessageBox::Cancel | QMessageBox::Ok, QMessageBox::Cancel) != QMessageBox::Cancel ) {
ui.photosView->selectAll();
removeSelectedPhotos();
}
}
#define SHOW_SELECTIVE(_component) \

View file

@ -97,6 +97,7 @@ slots:
void escDetected(void);
void photoDoubleClicked(const QString filePath);
void removeSelectedPhotos();
void removeAllPhotos();
void showLocation();
void enableGeoLookupEdition();
void disableGeoLookupEdition();