]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphincontextmenu.h
Port to QDebug*. KVBox--
[dolphin.git] / src / dolphincontextmenu.h
index 1c65fab138307dac0c848ee42c858d07e6393690..8ed22dda5c1ae1834365fb7d11b090122d65e707 100644 (file)
 #define DOLPHINCONTEXTMENU_H
 
 #include <KFileItem>
-#include <KService>
-#include <KUrl>
+#include <QUrl>
 #include <konq_copytomenu.h>
-#include <KMenu>
+#include <QMenu>
 
-#include <QObject>
 
-#include <QVector>
 
-#include <QScopedPointer>
 
 class QAction;
 class DolphinMainWindow;
 class KFileItemActions;
 class KFileItemListProperties;
+class DolphinRemoveAction;
 
 /**
  * @brief Represents the context menu which appears when doing a right
@@ -49,7 +46,7 @@ class KFileItemListProperties;
  * - 'Actions':   Contains all actions which can be applied to the
  *                given item.
  */
-class DolphinContextMenu : public KMenu
+class DolphinContextMenu : public QMenu
 {
     Q_OBJECT
 
@@ -57,6 +54,7 @@ public:
     enum Command
     {
         None,
+        OpenParentFolder,
         OpenParentFolderInNewWindow,
         OpenParentFolderInNewTab
     };
@@ -74,7 +72,7 @@ public:
     DolphinContextMenu(DolphinMainWindow* parent,
                        const QPoint& pos,
                        const KFileItem& fileInfo,
-                       const KUrl& baseUrl);
+                       const QUrl& baseUrl);
 
     virtual ~DolphinContextMenu();
 
@@ -94,20 +92,13 @@ protected:
     virtual void keyPressEvent(QKeyEvent *ev);
     virtual void keyReleaseEvent(QKeyEvent *ev);
 
-private slots:
-    /**
-     * Triggers the 'Delete'-action if the shift-key has been pressed, otherwise
-     * the 'Move to Trash'-action gets triggered.
-     */
-    void slotRemoveActionTriggered();
-
 private:
     void openTrashContextMenu();
     void openTrashItemContextMenu();
     void openItemContextMenu();
     void openViewportContextMenu();
 
-    void insertDefaultItemActions();
+    void insertDefaultItemActions(const KFileItemListProperties&);
 
     /**
      * Adds the "Show menubar" action to the menu if the
@@ -115,7 +106,7 @@ private:
      */
     void addShowMenuBarAction();
 
-    bool placeExists(const KUrl& url) const;
+    bool placeExists(const QUrl& url) const;
 
     QAction* createPasteAction();
 
@@ -148,20 +139,6 @@ private:
      */
     void addCustomActions();
 
-    /**
-     * Updates m_removeAction to represent the 'Delete'-action if the shift-key
-     * has been pressed or the selection is not local. Otherwise it represents
-     * the 'Move to Trash'-action.
-     */
-    void updateRemoveAction();
-
-    /**
-     * @return True if a moving to the trash should be done instead of
-     *         deleting the selected items.
-     * @see updateRemoveAction(), slotRemoveActionTriggered()
-     */
-    bool moveToTrash() const;
-
 private:
     struct Entry
     {
@@ -185,7 +162,7 @@ private:
 
     KFileItem m_fileInfo;
 
-    KUrl m_baseUrl;
+    QUrl m_baseUrl;
     KFileItem* m_baseFileItem;  /// File item for m_baseUrl
 
     KFileItemList m_selectedItems;
@@ -197,8 +174,7 @@ private:
 
     Command m_command;
 
-    bool m_shiftPressed;
-    QAction* m_removeAction; // Action that represents either 'Move To Trash' or 'Delete'
+    DolphinRemoveAction* m_removeAction; // Action that represents either 'Move To Trash' or 'Delete'
 };
 
 #endif