diff options
Diffstat (limited to 'filesystemwidget.cpp')
-rw-r--r-- | filesystemwidget.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/filesystemwidget.cpp b/filesystemwidget.cpp index 3f550a4..6fbe552 100644 --- a/filesystemwidget.cpp +++ b/filesystemwidget.cpp @@ -21,6 +21,7 @@ #include <QTimer> #include <QProgressDialog> #include <QToolBar> +#include <QInputDialog> #include "filesystemwidget.h" #include "filesystemdirproxy.h" @@ -307,7 +308,16 @@ void FilesystemWidget::renameFile(){ if(curIdx.data().toString() == ".."){ return; } - mFileView->edit(curIdx); + bool ok = false; + QString fileName = curIdx.data(SmDirModel::NameRole).toString(); + QString l1 = QString(tr("Rename %1").arg(fileName)); + QString newName = QInputDialog::getText(this, tr("Rename file"), l1, QLineEdit::Normal, fileName, &ok); + if(ok){ + QFileInfo fi(curIdx.data(SmDirModel::FullPathRole).toString()); + QString nfn = QString("%1/%2").arg(fi.absolutePath()).arg(newName); + QFile f(fi.absoluteFilePath()); + f.rename(nfn); + } } void FilesystemWidget::playSelected(const QString &player){ |