X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/3d4e6938f57fcf010b4fda7255384098327eb67d..b1c9b5126d:/src/dolphincolumnview.h diff --git a/src/dolphincolumnview.h b/src/dolphincolumnview.h index 6ac4fdb3f..caa54eab8 100644 --- a/src/dolphincolumnview.h +++ b/src/dolphincolumnview.h @@ -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. */ @@ -91,10 +102,34 @@ public: */ void showColumn(const KUrl& url); + /** + * Does an inline editing for the item \a item + * inside the active column. + */ + 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); @@ -108,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 @@ -123,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 @@ -137,9 +171,6 @@ private slots: void slotShowPreviewChanged(); private: - bool isZoomInPossible() const; - bool isZoomOutPossible() const; - DolphinColumnWidget* activeColumn() const; /** @@ -169,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;