X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/f6c7b90edf05a52fba6e2a06caa0247e909b43e8..b1c9b5126d:/src/selectionmanager.h diff --git a/src/selectionmanager.h b/src/selectionmanager.h index 1bf4f8b8c..080a94267 100644 --- a/src/selectionmanager.h +++ b/src/selectionmanager.h @@ -28,9 +28,11 @@ class DolphinSortFilterProxyModel; class QAbstractItemView; class QModelIndex; class QAbstractButton; +class QItemSelection; +class SelectionToggle; /** - * @brief Allows to select and deselect items for the single-click mode. + * @brief Allows to select and deselect items for item views. * * Whenever an item is hovered by the mouse, a toggle button is shown * which allows to select/deselect the current item. @@ -43,6 +45,13 @@ public: SelectionManager(QAbstractItemView* parent); virtual ~SelectionManager(); +public slots: + /** + * Resets the selection manager so that the toggle button gets + * invisible. + */ + void reset(); + signals: /** Is emitted if the selection has been changed by the toggle button. */ void selectionChanged(); @@ -50,17 +59,18 @@ signals: private slots: void slotEntered(const QModelIndex& index); void slotViewportEntered(); - void slotSelectionChanged(); void setItemSelected(bool selected); + void slotRowsRemoved(const QModelIndex& parent, int start, int end); + void slotSelectionChanged(const QItemSelection& selected, const QItemSelection& deselected); private: - KFileItem itemForIndex(const QModelIndex& index) const; - const QModelIndex indexForItem(const KFileItem& item) const; + KUrl urlForIndex(const QModelIndex& index) const; + const QModelIndex indexForUrl(const KUrl& url) const; private: QAbstractItemView* m_view; - QAbstractButton* m_button; - KFileItem m_item; + SelectionToggle* m_toggle; + bool m_connected; }; #endif