]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Set the Details View colummns width to the preferred column width, by double-clicking...
authorEmmanuel Pescosta <emmanuelpescosta099@gmail.com>
Thu, 6 Feb 2014 12:00:28 +0000 (13:00 +0100)
committerEmmanuel Pescosta <emmanuelpescosta099@gmail.com>
Thu, 6 Feb 2014 12:00:28 +0000 (13:00 +0100)
BUG: 293315
FIXED-IN: 4.13
REVIEW: 115503

src/kitemviews/private/kitemlistheaderwidget.cpp
src/kitemviews/private/kitemlistheaderwidget.h

index b55ba1eb51677d8c29267a91e2609c96621bd2f1..1f210ab5a862b35fdd19118ec431761184c4fb86 100644 (file)
@@ -327,6 +327,22 @@ void KItemListHeaderWidget::mouseMoveEvent(QGraphicsSceneMouseEvent* event)
     }
 }
 
+void KItemListHeaderWidget::mouseDoubleClickEvent(QGraphicsSceneMouseEvent* event)
+{
+    QGraphicsItem::mouseDoubleClickEvent(event);
+
+    const int roleIndex = roleIndexAt(event->pos());
+    if (roleIndex >= 0 && isAboveRoleGrip(event->pos(), roleIndex)) {
+        const QByteArray role = m_columns.at(roleIndex);
+
+        qreal previousWidth = columnWidth(role);
+        setColumnWidth(role, preferredColumnWidth(role));
+        qreal currentWidth = columnWidth(role);
+
+        emit columnWidthChanged(role, currentWidth, previousWidth);
+    }
+}
+
 void KItemListHeaderWidget::hoverEnterEvent(QGraphicsSceneHoverEvent* event)
 {
     QGraphicsWidget::hoverEnterEvent(event);
index f8bba977bfbd227fea4c44eb21895cdfc4906dd3..b99f45f354e7e861cde72c1fffa486583c97c120 100644 (file)
@@ -100,6 +100,7 @@ protected:
     virtual void mousePressEvent(QGraphicsSceneMouseEvent* event);
     virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent* event);
     virtual void mouseMoveEvent(QGraphicsSceneMouseEvent* event);
+    virtual void mouseDoubleClickEvent(QGraphicsSceneMouseEvent* event);
     virtual void hoverEnterEvent(QGraphicsSceneHoverEvent* event);
     virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent* event);
     virtual void hoverMoveEvent(QGraphicsSceneHoverEvent* event);