]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/draganddrophelper.h
Restore the "Edit->Selection" menu from Konqueror 3 for file
[dolphin.git] / src / draganddrophelper.h
index e62897208839ce902b72e72612c15aea02c136ff..d8823d68d4231b39a3e3455397c235679f799c9a 100644 (file)
@@ -30,15 +30,13 @@ class KUrl;
 class QDropEvent;
 class QMimeData;
 class QAbstractItemView;
-class QBrush;
-class QRect;
 class QWidget;
 
 /**
  * @brief Helper class for having a common drag and drop behavior.
  *
  * The class is used by DolphinIconsView, DolphinDetailsView,
- * DolphinColumnView and SidebarTreeView to have a consistent
+ * DolphinColumnView and PanelTreeView to have a consistent
  * drag and drop behavior between all views.
  */
 class LIBDOLPHINPRIVATE_EXPORT DragAndDropHelper : public QObject
@@ -47,20 +45,26 @@ class LIBDOLPHINPRIVATE_EXPORT DragAndDropHelper : public QObject
 
 public:
     static DragAndDropHelper& instance();
-    
+
     /**
      * Returns true, if Dolphin supports the dragging of
      * the given mime data.
      */
     bool isMimeDataSupported(const QMimeData* mimeData) const;
-    
+
     /**
      * Creates a drag object for the view \a itemView for all selected items.
      */
     void startDrag(QAbstractItemView* itemView,
                    Qt::DropActions supportedActions,
                    DolphinController* controller = 0);
-                          
+
+    /**
+     * Returns true if and only if the view \a itemView was the last view to 
+     * be passed to startDrag(...), and that drag is still in progress.
+     */
+    bool isDragSource(QAbstractItemView* itemView);
+
     /**
      * Handles the dropping of URLs to the given
      * destination. A context menu with the options
@@ -77,10 +81,13 @@ public:
                   QWidget* widget);
 signals:
     void errorMessage(const QString& msg);
-    
+
 private:
     DragAndDropHelper();
-    
+    // The last view passed in startDrag(...), or 0 if
+    // no startDrag(...) initiated drag is in progress.
+    QAbstractItemView *m_dragSource;
+
     friend class DragAndDropHelperSingleton;
 };