┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistheader_p.h
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2011-09-21 23:40:51 +0200
committerPeter Penz <[email protected]>2011-09-21 23:42:28 +0200
commitbc96a102340252363158ded39a3cb0adaee59824 (patch)
tree8031d4a05ae811f5d01a5e971533fcfc15ad8029 /src/kitemviews/kitemlistheader_p.h
parent51cd727066efaf548a68585ec0bb66fa1a766c4d (diff)
Improve drawing of list-header
Diffstat (limited to 'src/kitemviews/kitemlistheader_p.h')
-rw-r--r--src/kitemviews/kitemlistheader_p.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/kitemviews/kitemlistheader_p.h b/src/kitemviews/kitemlistheader_p.h
index e75bd7b14..7219722a7 100644
--- a/src/kitemviews/kitemlistheader_p.h
+++ b/src/kitemviews/kitemlistheader_p.h
@@ -49,14 +49,34 @@ public:
virtual void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget = 0);
+protected:
+ virtual void mousePressEvent(QGraphicsSceneMouseEvent* event);
+ virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent* event);
+ virtual void mouseMoveEvent(QGraphicsSceneMouseEvent* event);
+ virtual void hoverEnterEvent(QGraphicsSceneHoverEvent* event);
+ virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent* event);
+ virtual void hoverMoveEvent(QGraphicsSceneHoverEvent* event);
+
private slots:
void slotSortRoleChanged(const QByteArray& current, const QByteArray& previous);
void slotSortOrderChanged(Qt::SortOrder current, Qt::SortOrder previous);
private:
+ void paintRole(QPainter* painter, const QByteArray& role, const QRectF& rect, int orderIndex);
+
+ void updatePressedRoleIndex(const QPointF& pos);
+ void updateHoveredRoleIndex(const QPointF& pos);
+ int roleIndexAt(const QPointF& pos) const;
+ bool isAboveRoleGrip(const QPointF& pos, int roleIndex) const;
+
+private:
KItemModelBase* m_model;
QList<QByteArray> m_visibleRoles;
QHash<QByteArray, qreal> m_visibleRolesWidths;
+
+ int m_hoveredRoleIndex;
+ int m_pressedRoleIndex;
+ bool m_resizePressedRole;
};
#endif