]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/panels/folders/treeviewcontextmenu.cpp
Allow compiling Dolphin with KF5
[dolphin.git] / src / panels / folders / treeviewcontextmenu.cpp
index 8d0b24cf30686303aceeaf272230ec682a17a2a1..b15badde1213333adfa3155969d608110994af6d 100644 (file)
@@ -24,6 +24,9 @@
 #include <KIconLoader>
 #include <KIO/DeleteJob>
 #include <KMenu>
+#include <KIcon>
+#include <KSharedConfig>
+#include <KConfigGroup>
 #include <konqmimedata.h>
 #include <KFileItemListProperties>
 #include <konq_operations.h>
@@ -34,6 +37,7 @@
 
 #include <QApplication>
 #include <QClipboard>
+#include <QMimeData>
 
 TreeViewContextMenu::TreeViewContextMenu(FoldersPanel* parent,
                                          const KFileItem& fileInfo) :
@@ -105,34 +109,38 @@ void TreeViewContextMenu::open()
         }
 
         popup->addSeparator();
+    }
+
+    // insert 'Show Hidden Files'
+    QAction* showHiddenFilesAction = new QAction(i18nc("@action:inmenu", "Show Hidden Files"), this);
+    showHiddenFilesAction->setCheckable(true);
+    showHiddenFilesAction->setChecked(m_parent->showHiddenFiles());
+    popup->addAction(showHiddenFilesAction);
+    connect(showHiddenFilesAction, SIGNAL(toggled(bool)), this, SLOT(setShowHiddenFiles(bool)));
+
+    // insert 'Automatic Scrolling'
+    QAction* autoScrollingAction = new QAction(i18nc("@action:inmenu", "Automatic Scrolling"), this);
+    autoScrollingAction->setCheckable(true);
+    autoScrollingAction->setChecked(m_parent->autoScrolling());
+    // TODO: Temporary disabled. Horizontal autoscrolling will be implemented later either
+    // in KItemViews or manually as part of the FoldersPanel
+    //popup->addAction(autoScrollingAction);
+    connect(autoScrollingAction, SIGNAL(toggled(bool)), this, SLOT(setAutoScrolling(bool)));
 
+    if (!m_fileItem.isNull()) {
         // insert 'Properties' entry
         QAction* propertiesAction = new QAction(i18nc("@action:inmenu", "Properties"), this);
         propertiesAction->setIcon(KIcon("document-properties"));
         connect(propertiesAction, SIGNAL(triggered()), this, SLOT(showProperties()));
         popup->addAction(propertiesAction);
-
-        popup->addSeparator();
     }
 
-    if (m_fileItem.isNull()) {
-        QAction* showHiddenFilesAction = new QAction(i18nc("@action:inmenu", "Show Hidden Files"), this);
-        showHiddenFilesAction->setCheckable(true);
-        showHiddenFilesAction->setChecked(m_parent->showHiddenFiles());
-        popup->addAction(showHiddenFilesAction);
-        connect(showHiddenFilesAction, SIGNAL(toggled(bool)), this, SLOT(setShowHiddenFiles(bool)));
-
-        QAction* autoScrollingAction = new QAction(i18nc("@action:inmenu", "Automatic Scrolling"), this);
-        autoScrollingAction->setCheckable(true);
-        autoScrollingAction->setChecked(m_parent->autoScrolling());
-        // TODO: Temporary disabled. Horizontal autoscrolling will be implemented later either
-        // in KItemViews or manually as part of the FoldersPanel
-        //popup->addAction(autoScrollingAction);
-        connect(autoScrollingAction, SIGNAL(toggled(bool)), this, SLOT(setAutoScrolling(bool)));
-    }
-
-    foreach (QAction* action, m_parent->customContextMenuActions()) {
-        popup->addAction(action);
+    QList<QAction*> customActions = m_parent->customContextMenuActions();
+    if (!customActions.isEmpty()) {
+        popup->addSeparator();
+        foreach (QAction* action, customActions) {
+            popup->addAction(action);
+        }
     }
 
     QWeakPointer<KMenu> popupPtr = popup;
@@ -188,12 +196,12 @@ void TreeViewContextMenu::rename()
 
 void TreeViewContextMenu::moveToTrash()
 {
-    KonqOperations::del(m_parent, KonqOperations::TRASH, m_fileItem.url());
+    KonqOperations::del(m_parent, KonqOperations::TRASH, KUrl::List() << m_fileItem.url());
 }
 
 void TreeViewContextMenu::deleteItem()
 {
-    KonqOperations::del(m_parent, KonqOperations::DEL, m_fileItem.url());
+    KonqOperations::del(m_parent, KonqOperations::DEL, KUrl::List() << m_fileItem.url());
 }
 
 void TreeViewContextMenu::showProperties()