From f067201e9f25eddd9b62e41240e93685992dcf22 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Thu, 26 Jun 2008 22:23:09 +0000 Subject: respect the inline-renaming setting also for the Folder Panel (= treeview) svn path=/trunk/KDE/kdebase/apps/; revision=824946 --- src/treeviewsidebarpage.cpp | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/treeviewsidebarpage.cpp') diff --git a/src/treeviewsidebarpage.cpp b/src/treeviewsidebarpage.cpp index d5f5f4053..8258fbfc8 100644 --- a/src/treeviewsidebarpage.cpp +++ b/src/treeviewsidebarpage.cpp @@ -24,12 +24,15 @@ #include "dolphinview.h" #include "dolphinsettings.h" #include "dolphin_folderspanelsettings.h" +#include "dolphin_generalsettings.h" +#include "renamedialog.h" #include "sidebartreeview.h" #include "treeviewcontextmenu.h" #include #include #include +#include #include #include @@ -81,6 +84,28 @@ bool TreeViewSidebarPage::showHiddenFiles() const return FoldersPanelSettings::showHiddenFiles(); } + +void TreeViewSidebarPage::rename(const KFileItem& item) +{ + if (DolphinSettings::instance().generalSettings()->renameInline()) { + const QModelIndex dirIndex = m_dolphinModel->indexForItem(item); + const QModelIndex proxyIndex = m_proxyModel->mapFromSource(dirIndex); + m_treeView->edit(proxyIndex); + } else { + KFileItemList items; + items.append(item); + RenameDialog dialog(this, items); + if (dialog.exec() == QDialog::Accepted) { + const QString& newName = dialog.newName(); + if (!newName.isEmpty()) { + KUrl newUrl = item.url(); + newUrl.setFileName(newName); + KonqOperations::rename(this, item.url(), newUrl); + } + } + } +} + void TreeViewSidebarPage::setUrl(const KUrl& url) { if (!url.isValid() || (url == SidebarPage::url())) { -- cgit v1.3