class DolphinColumnView;
class DolphinModel;
class DolphinSortFilterProxyModel;
-class IconManager;
-class KDirLister;
+class DolphinDirLister;
+class DolphinViewAutoScroller;
+class KFilePreviewGenerator;
class KJob;
class KFileItem;
class KFileItemList;
+class SelectionManager;
+class ToolTipManager;
class QPixmap;
/**
*/
void setNameFilter(const QString& nameFilter);
+ /**
+ * Does an inline editing for the item \a item.
+ */
+ void editItem(const KFileItem& item);
+
+ /**
+ * Returns the item on the position \a pos. The KFileItem instance
+ * is null if no item is below the position.
+ */
+ KFileItem itemAt(const QPoint& pos) const;
+
+ KFileItemList selectedItems() const;
+
+ /**
+ * Returns the MIME data for the selected items.
+ */
+ QMimeData* selectionMimeData() const;
+
protected:
virtual QStyleOptionViewItem viewOptions() const;
virtual void startDrag(Qt::DropActions supportedActions);
virtual void keyPressEvent(QKeyEvent* event);
virtual void contextMenuEvent(QContextMenuEvent* event);
virtual void wheelEvent(QWheelEvent* event);
+ virtual void leaveEvent(QEvent* event);
virtual void selectionChanged(const QItemSelection& selected, const QItemSelection& deselected);
+ virtual void currentChanged(const QModelIndex& current, const QModelIndex& previous);
private slots:
- /**
- * If the item specified by \a index is a directory, then this
- * directory will be loaded in a new column. If the item is a
- * file, the corresponding application will get started.
- */
- void triggerItem(const QModelIndex& index);
-
void slotEntered(const QModelIndex& index);
-
+ void slotClicked(const QModelIndex& index);
+ void slotDoubleClicked(const QModelIndex& index);
void requestActivation();
+ void updateFont();
private:
/** Used by DolphinColumnWidget::setActive(). */
/** Used by DolphinColumnWidget::setActive(). */
void deactivate();
- KFileItem itemForIndex(const QModelIndex& index) const;
-
private:
bool m_active;
DolphinColumnView* m_view;
+ SelectionManager* m_selectionManager;
+ DolphinViewAutoScroller* m_autoScroller;
KUrl m_url; // URL of the directory that is shown
KUrl m_childUrl; // URL of the next column that is shown
QFont m_font;
QSize m_decorationSize;
- KDirLister* m_dirLister;
+ DolphinDirLister* m_dirLister;
DolphinModel* m_dolphinModel;
DolphinSortFilterProxyModel* m_proxyModel;
- IconManager* m_iconManager;
+ KFilePreviewGenerator* m_previewGenerator;
+
+ ToolTipManager* m_toolTipManager;
+
+ QRect m_dropRect;
- bool m_dragging; // TODO: remove this property when the issue #160611 is solved in Qt 4.4
- QRect m_dropRect; // TODO: remove this property when the issue #160611 is solved in Qt 4.4
+ friend class DolphinColumnView;
};
inline bool DolphinColumnWidget::isActive() const