X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/67ebd66f94356b4e66005b1072919cb7b5e858bb..refs/heads/master:/src/views/dolphinitemlistview.h diff --git a/src/views/dolphinitemlistview.h b/src/views/dolphinitemlistview.h index 283b22400..0483c0644 100644 --- a/src/views/dolphinitemlistview.h +++ b/src/views/dolphinitemlistview.h @@ -9,7 +9,6 @@ #include "dolphin_export.h" #include "kitemviews/kfileitemlistview.h" -#include "settings/viewmodes/viewmodesettings.h" class KFileItemListView; @@ -25,29 +24,41 @@ class DOLPHIN_EXPORT DolphinItemListView : public KFileItemListView Q_OBJECT public: - explicit DolphinItemListView(QGraphicsWidget* parent = nullptr); + explicit DolphinItemListView(QGraphicsWidget *parent = nullptr); ~DolphinItemListView() override; void setZoomLevel(int level); int zoomLevel() const; + enum SelectionTogglesEnabled { True, False, FollowSetting }; + /** + * Sets whether the items in this view should show a small selection toggle area on mouse hover. + * The default for this view is to follow the "showSelectionToggle" setting but this method can + * be used to ignore that setting and force a different value. + */ + void setEnabledSelectionToggles(SelectionTogglesEnabled selectionTogglesEnabled); + void readSettings(); void writeSettings(); protected: - KItemListWidgetCreatorBase* defaultWidgetCreator() const override; + KItemListWidgetCreatorBase *defaultWidgetCreator() const override; + /** Overwriting in the Dolphin-specific class because we want this to be user-configurable. + * @see KStandardItemListView::itemLayoutHighlightEntireRow */ + bool itemLayoutHighlightEntireRow(ItemLayout layout) const override; bool itemLayoutSupportsItemExpanding(ItemLayout layout) const override; void onItemLayoutChanged(ItemLayout current, ItemLayout previous) override; void onPreviewsShownChanged(bool shown) override; - void onVisibleRolesChanged(const QList& current, - const QList& previous) override; + void onVisibleRolesChanged(const QList ¤t, const QList &previous) override; void updateFont() override; private: void updateGridSize(); - ViewModeSettings::ViewMode viewMode() const; + using KItemListView::setEnabledSelectionToggles; // Makes sure that the setEnabledSelectionToggles() declaration above doesn't hide + // the one from the base class so we can still use it privately. + SelectionTogglesEnabled m_selectionTogglesEnabled = FollowSetting; private: int m_zoomLevel;