]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphincolumnview.h
allow to disable the preview of the Information Panel
[dolphin.git] / src / dolphincolumnview.h
index 2ab4d2d5da718080420c1261427f0762fc9cd297..65e4ff3e9910465d47f5692c134c4b8980ac2f4b 100644 (file)
@@ -50,8 +50,19 @@ public:
     explicit DolphinColumnView(QWidget* parent, DolphinController* controller);
     virtual ~DolphinColumnView();
 
+    /** @see QAbstractItemView::indexAt() */
     virtual QModelIndex indexAt(const QPoint& point) const;
+
+    /**
+     * Returns the item on the position \a pos. The KFileItem instance
+     * is null if no item is below the position.
+     */
+    KFileItem itemAt(const QPoint& point) const;
+
+    /** @see QAbstractItemView::scrollTo() */
     virtual void scrollTo(const QModelIndex& index, ScrollHint hint = EnsureVisible);
+
+    /** @see QAbstractItemView::visualRect() */
     virtual QRect visualRect(const QModelIndex& index) const;
 
     /** Inverts the selection of the currently active column. */
@@ -97,10 +108,28 @@ public:
      */
     void editItem(const KFileItem& item);
 
+    /**
+     * Returns the selected items of the active column.
+     */
+    KFileItemList selectedItems() const;
+
+    /**
+     * Returns the MIME data for the selected items
+     * of the active column.
+     */
+    QMimeData* selectionMimeData() const;
+
 public slots:
     /** @see QAbstractItemView::selectAll() */
     virtual void selectAll();
 
+signals:
+    /**
+     * Requests that the given column be deleted at the discretion
+     * of the receiver of the signal.
+     */
+    void requestColumnDeletion(QAbstractItemView* column);
+
 protected:
     virtual bool isIndexHidden(const QModelIndex& index) const;
     virtual QModelIndex moveCursor(CursorAction cursorAction, Qt::KeyboardModifiers modifiers);
@@ -114,8 +143,7 @@ protected:
     virtual void wheelEvent(QWheelEvent* event);
 
 private slots:
-    void zoomIn();
-    void zoomOut();
+    void setZoomLevel(int level);
 
     /**
      * Moves the content of the columns view to represent
@@ -129,7 +157,7 @@ private slots:
      * will get informed about possible zoom in/zoom out
      * operations.
      */
-    void updateDecorationSize();
+    void updateDecorationSize(bool showPreview);
 
     /**
      * Updates the background color of the columns to respect
@@ -143,9 +171,6 @@ private slots:
     void slotShowPreviewChanged();
 
 private:
-    bool isZoomInPossible() const;
-    bool isZoomOutPossible() const;
-
     DolphinColumnWidget* activeColumn() const;
 
     /**
@@ -175,6 +200,18 @@ private:
     /** Removes all columns except of the root column. */
     void removeAllColumns();
 
+    /**
+     * Returns the position of the point \a point relative to the column
+     * \a column.
+     */
+    QPoint columnPosition(DolphinColumnWidget* column, const QPoint& point) const;
+
+    /**
+     * Deletes the column. If the itemview of the controller is set to the column,
+     * the controllers itemview is set to 0.
+     */
+    void deleteColumn(DolphinColumnWidget* column);
+
 private:
     DolphinController* m_controller;
     bool m_active;