diff options
Diffstat (limited to 'filestreewidget.cpp')
-rw-r--r-- | filestreewidget.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/filestreewidget.cpp b/filestreewidget.cpp index b25804f..89de946 100644 --- a/filestreewidget.cpp +++ b/filestreewidget.cpp @@ -110,6 +110,26 @@ void FilesTreeWidget::setDvdNo(){ } } +void FilesTreeWidget::removeFiles(){ + QModelIndexList selected = mView->selectionModel()->selectedRows(); + if(selected.isEmpty()){ + return; + } + QString message = QString(tr("<p>Really delete these file(s):</p><ul>")); + foreach(QModelIndex i, selected){ + message.append(QString(tr("<li>%1</li>")).arg(i.data(FilesTreeModel::FileNameRole).toString())); + } + message.append("</ul>"); + int retval = QMessageBox::critical(this, tr("Question"), message, QMessageBox::Yes | QMessageBox::No); + if(retval == QMessageBox::Yes){ + QModelIndexList realSelected; + foreach(QModelIndex i, selected){ + realSelected << mProxy->mapToSource(i); + } + mModel->deleteFiles(realSelected); + } +} + void FilesTreeWidget::fileSelectionChanged(const QModelIndex ¤t, const QModelIndex &previous){ Q_UNUSED(previous); int seriesPartId = current.data(FilesTreeModel::SeriesPartIdRole).toInt(); |