X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/da7ccef4886df64913b8a6a4bc14cfdb06067325..24268a4df5d4fe0a856d17ca878d793527a1188e:/src/kitemviews/private/kitemlistheaderwidget.cpp diff --git a/src/kitemviews/private/kitemlistheaderwidget.cpp b/src/kitemviews/private/kitemlistheaderwidget.cpp index d23b7def9..02a4f939d 100644 --- a/src/kitemviews/private/kitemlistheaderwidget.cpp +++ b/src/kitemviews/private/kitemlistheaderwidget.cpp @@ -21,7 +21,7 @@ KItemListHeaderWidget::KItemListHeaderWidget(QGraphicsWidget *parent) , m_columns() , m_columnWidths() , m_preferredColumnWidths() - , m_hoveredRoleIndex(-1) + , m_hoveredIndex(-1) , m_pressedRoleIndex(-1) , m_roleOperation(NoRoleOperation) , m_pressedMousePos() @@ -136,7 +136,7 @@ void KItemListHeaderWidget::setSidePadding(qreal width) { if (m_sidePadding != width) { m_sidePadding = width; - sidePaddingChanged(width); + Q_EMIT sidePaddingChanged(width); update(); } } @@ -167,7 +167,7 @@ void KItemListHeaderWidget::paint(QPainter *painter, const QStyleOptionGraphicsI qreal x = -m_offset + m_sidePadding; int orderIndex = 0; - for (const QByteArray &role : qAsConst(m_columns)) { + for (const QByteArray &role : std::as_const(m_columns)) { const qreal roleWidth = m_columnWidths.value(role); const QRectF rect(x, 0, roleWidth, size().height()); paintRole(painter, role, rect, orderIndex, widget); @@ -365,15 +365,15 @@ void KItemListHeaderWidget::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *even void KItemListHeaderWidget::hoverEnterEvent(QGraphicsSceneHoverEvent *event) { QGraphicsWidget::hoverEnterEvent(event); - updateHoveredRoleIndex(event->pos()); + updateHoveredIndex(event->pos()); } void KItemListHeaderWidget::hoverLeaveEvent(QGraphicsSceneHoverEvent *event) { QGraphicsWidget::hoverLeaveEvent(event); - if (m_hoveredRoleIndex != -1) { - Q_EMIT columnUnHovered(m_hoveredRoleIndex); - m_hoveredRoleIndex = -1; + if (m_hoveredIndex != -1) { + Q_EMIT columnUnHovered(m_hoveredIndex); + m_hoveredIndex = -1; update(); } } @@ -383,8 +383,8 @@ void KItemListHeaderWidget::hoverMoveEvent(QGraphicsSceneHoverEvent *event) QGraphicsWidget::hoverMoveEvent(event); const QPointF &pos = event->pos(); - updateHoveredRoleIndex(pos); - if ((m_hoveredRoleIndex >= 0 && isAboveRoleGrip(pos, m_hoveredRoleIndex)) || isAbovePaddingGrip(pos, PaddingGrip::Leading) + updateHoveredIndex(pos); + if ((m_hoveredIndex >= 0 && isAboveRoleGrip(pos, m_hoveredIndex)) || isAbovePaddingGrip(pos, PaddingGrip::Leading) || isAbovePaddingGrip(pos, PaddingGrip::Trailing)) { setCursor(Qt::SplitHCursor); } else { @@ -424,7 +424,7 @@ void KItemListHeaderWidget::paintRole(QPainter *painter, const QByteArray &role, if (window() && window()->isActiveWindow()) { option.state |= QStyle::State_Active; } - if (m_hoveredRoleIndex == orderIndex) { + if (m_hoveredIndex == orderIndex) { option.state |= QStyle::State_MouseOver; } if (m_pressedRoleIndex == orderIndex) { @@ -486,17 +486,17 @@ void KItemListHeaderWidget::updatePressedRoleIndex(const QPointF &pos) } } -void KItemListHeaderWidget::updateHoveredRoleIndex(const QPointF &pos) +void KItemListHeaderWidget::updateHoveredIndex(const QPointF &pos) { const int hoverIndex = roleIndexAt(pos); - if (m_hoveredRoleIndex != hoverIndex) { - if (m_hoveredRoleIndex != -1) { - Q_EMIT columnUnHovered(m_hoveredRoleIndex); + if (m_hoveredIndex != hoverIndex) { + if (m_hoveredIndex != -1) { + Q_EMIT columnUnHovered(m_hoveredIndex); } - m_hoveredRoleIndex = hoverIndex; - if (m_hoveredRoleIndex != -1) { - Q_EMIT columnHovered(m_hoveredRoleIndex); + m_hoveredIndex = hoverIndex; + if (m_hoveredIndex != -1) { + Q_EMIT columnHovered(m_hoveredIndex); } update(); } @@ -507,7 +507,7 @@ int KItemListHeaderWidget::roleIndexAt(const QPointF &pos) const int index = -1; qreal x = -m_offset + m_sidePadding; - for (const QByteArray &role : qAsConst(m_columns)) { + for (const QByteArray &role : std::as_const(m_columns)) { ++index; x += m_columnWidths.value(role); if (pos.x() <= x) { @@ -540,7 +540,7 @@ bool KItemListHeaderWidget::isAbovePaddingGrip(const QPointF &pos, PaddingGrip p return pos.x() >= (lx - grip) && pos.x() <= lx; case Trailing: { qreal rx = lx; - for (const QByteArray &role : qAsConst(m_columns)) { + for (const QByteArray &role : std::as_const(m_columns)) { rx += m_columnWidths.value(role); } return pos.x() >= (rx - grip) && pos.x() <= rx; @@ -604,7 +604,7 @@ int KItemListHeaderWidget::targetOfMovingRole() const qreal KItemListHeaderWidget::roleXPosition(const QByteArray &role) const { qreal x = -m_offset + m_sidePadding; - for (const QByteArray &visibleRole : qAsConst(m_columns)) { + for (const QByteArray &visibleRole : std::as_const(m_columns)) { if (visibleRole == role) { return x; } @@ -614,3 +614,5 @@ qreal KItemListHeaderWidget::roleXPosition(const QByteArray &role) const return -1; } + +#include "moc_kitemlistheaderwidget.cpp"