diff options
Diffstat (limited to 'filestreewidget.cpp')
-rw-r--r-- | filestreewidget.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/filestreewidget.cpp b/filestreewidget.cpp index d27a22e..a348ac4 100644 --- a/filestreewidget.cpp +++ b/filestreewidget.cpp @@ -17,6 +17,8 @@ #include <QSpinBox> #include <QPushButton> #include <QProcess> +#include <QFileDialog> +#include <QSettings> #include <QDebug> @@ -139,6 +141,23 @@ void FilesTreeWidget::removeFiles(){ } } +void FilesTreeWidget::moveToDirectory(){ + QModelIndexList selected = mView->selectionModel()->selectedRows(); + if(selected.isEmpty()){ + return; + } + QSettings s; + QString startDir = s.value("paths/selecteddir", QDir::homePath()).toString(); + QString dir = QFileDialog::getExistingDirectory(this, tr("Select directory"), startDir); + if(!dir.isEmpty()){ + foreach(QModelIndex i, selected){ + QString source = i.data(FilesTreeModel::FullPathRole).toString(); + QString destination = QString("%1/%2").arg(dir).arg(i.data(FilesTreeModel::FileNameRole).toString()); + QFile::rename(source, destination); + } + } +} + void FilesTreeWidget::fileSelectionChanged(const QModelIndex ¤t, const QModelIndex &previous){ Q_UNUSED(previous); int seriesPartId = current.data(FilesTreeModel::SeriesPartIdRole).toInt(); |