]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kstandarditemlistwidget.h
Port from KIconLoader::drawOverlays to KIconUtils::addOverlays
[dolphin.git] / src / kitemviews / kstandarditemlistwidget.h
index 06bf0529adc44bec6cf492368208b40201dc9ac7..35392b42068551ac7c9a7a19d33f1278db64e70f 100644 (file)
 #include "kitemviews/kitemlistwidget.h"
 
 #include <QPixmap>
+#include <QPointer>
 #include <QPointF>
 #include <QStaticText>
 
 class KItemListRoleEditor;
 class KItemListStyleOption;
 class KItemListView;
+class QVariantAnimation;
 
 /**
  * @brief standard implementation of the ItemList widget informant for use with KStandardItemListView and KStandardItemModel.
@@ -103,6 +105,8 @@ public:
     QRectF expansionToggleRect() const override;
     QRectF selectionToggleRect() const override;
     QPixmap createDragPixmap(const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr) override;
+    /** @see KItemListWidget::startActivateSoonAnimation() */
+    void startActivateSoonAnimation(int timeUntilActivation) override;
 
     static KItemListWidgetInformant *createInformant();
 
@@ -242,6 +246,9 @@ private:
      */
     static qreal columnPadding(const KItemListStyleOption &option);
 
+    /** @returns whether the usual icon should be shown or not. */
+    bool isIconControlledByActivateSoonAnimation() const;
+
 protected:
     QHash<QByteArray, TextInfo *> m_textInfo; // PlacesItemListWidget needs to access this
 
@@ -282,6 +289,9 @@ private:
     KItemListRoleEditor *m_roleEditor;
     KItemListRoleEditor *m_oldRoleEditor;
 
+    /** @see startActivateSoonAnimation() */
+    QPointer<QVariantAnimation> m_activateSoonAnimation;
+
     friend class KStandardItemListWidgetInformant; // Accesses private static methods to be able to
                                                    // share a common layout calculation
 };