From 8abf0a7882dbd1c80e24e5d01b79cd1cf60925e2 Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 18 Dec 2010 12:02:44 +0100 Subject: Fix rename files in FSWidget Rename files inline, letting the model do all the work. Part of getting rid of MessageDialog. Maybe this broke the filename templates. We'll see... --- fileview.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'fileview.cpp') diff --git a/fileview.cpp b/fileview.cpp index 082ec92..331c7b8 100644 --- a/fileview.cpp +++ b/fileview.cpp @@ -22,6 +22,9 @@ #include #include #include +#include + +#include #include "fileview.h" #include "messagedialog.h" @@ -66,6 +69,12 @@ void FileView::readConfig(){ mHoverWin->setWindowOpacity(s.value("ui/hoveropacity", 10).toFloat() / 10.0); } +void FileView::closeEditor(QWidget *editor, QAbstractItemDelegate::EndEditHint hint){ + QTreeView::closeEditor(editor, hint); + QSortFilterProxyModel *proxy = qobject_cast(model()); + QModelIndex sourceIdx = proxy->mapToSource(currentIndex()); + emit editorClosed(sourceIdx); +} void FileView::doMark(){ int rowCount = model()->rowCount(rootIndex()); @@ -124,6 +133,10 @@ void FileView::contextMenuEvent(QContextMenuEvent *e){ } void FileView::keyPressEvent(QKeyEvent *e){ + if(!hasFocus()){ + QTreeView::keyPressEvent(e); + return; + } switch(e->key()){ case Qt::Key_Backspace: emit upDir(); -- cgit v1.2.3-70-g09d2