]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kitemlistselectionmanager.h
Fix build with Qt 5.14 RC
[dolphin.git] / src / kitemviews / kitemlistselectionmanager.h
index c4decd39eb3d07e49058d73b6b30259c843a77e2..6f57100066029ee9704da3a6b41f2fb028aeae37 100644 (file)
 #ifndef KITEMLISTSELECTIONMANAGER_H
 #define KITEMLISTSELECTIONMANAGER_H
 
-#include <libdolphin_export.h>
-
-#include <kitemviews/kitemmodelbase.h>
-#include <kitemviews/kitemset.h>
+#include "dolphin_export.h"
+#include "kitemviews/kitemmodelbase.h"
+#include "kitemviews/kitemset.h"
 
 #include <QObject>
 
@@ -35,7 +34,7 @@ class KItemModelBase;
 /**
  * @brief Allows to select and deselect items of a KItemListView.
  */
-class LIBDOLPHINPRIVATE_EXPORT KItemListSelectionManager : public QObject
+class DOLPHIN_EXPORT KItemListSelectionManager : public QObject
 {
     Q_OBJECT
 
@@ -51,8 +50,8 @@ public:
         Toggle
     };
 
-    KItemListSelectionManager(QObject* parent = 0);
-    virtual ~KItemListSelectionManager();
+    explicit KItemListSelectionManager(QObject* parent = nullptr);
+    ~KItemListSelectionManager() override;
 
     void setCurrentItem(int current);
     int currentItem() const;
@@ -63,6 +62,13 @@ public:
     bool hasSelection() const;
 
     void setSelected(int index, int count = 1, SelectionMode mode = Select);
+    /**
+     * Equivalent to:
+     * clearSelection();
+     * setSelected(index, count);
+     * but emitting once only selectionChanged signal
+     */
+    void replaceSelection(int index, int count = 1);
     void clearSelection();
 
     void beginAnchoredSelection(int anchor);