]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Don't let KItemListView decide itself whether to show the header
authorPeter Penz <peter.penz19@gmail.com>
Sat, 8 Oct 2011 21:05:03 +0000 (23:05 +0200)
committerPeter Penz <peter.penz19@gmail.com>
Sat, 8 Oct 2011 21:06:33 +0000 (23:06 +0200)
The header should be turned on or off by the user of the
KItemListView classes.

src/kitemviews/kitemlistview.cpp
src/views/dolphinitemlistcontainer.cpp

index 93baa1334c42ddef9b967440e1f14bf0b91778e3..6d1aeca24e060c2f38472c2cd06040d0cb9534d3 100644 (file)
@@ -148,7 +148,6 @@ void KItemListView::setItemSize(const QSizeF& itemSize)
             m_layouter->setItemSize(itemSize);
         }
     }
-    setHeaderShown(emptySize);
 
     m_sizeHintResolver->clearCache();
     updateLayout();
@@ -1460,17 +1459,18 @@ void KItemListView::updateVisibleRolesSizes(const KItemRangeList& itemRanges)
 
     if (itemCount == rangesItemCount) {
         m_visibleRolesSizes = visibleRolesSizes(itemRanges);
-
-        // Assure the the sizes are not smaller than the minimum defined by the header
-        // TODO: Currently only implemented for a top-aligned header
-        const qreal minHeaderRoleWidth = m_header->minimumRoleWidth();
-        QMutableHashIterator<QByteArray, QSizeF> it (m_visibleRolesSizes);
-        while (it.hasNext()) {
-            it.next();
-            const QSizeF& size = it.value();
-            if (size.width() < minHeaderRoleWidth) {
-                const QSizeF newSize(minHeaderRoleWidth, size.height());
-                m_visibleRolesSizes.insert(it.key(), newSize);
+        if (m_header) {
+            // Assure the the sizes are not smaller than the minimum defined by the header
+            // TODO: Currently only implemented for a top-aligned header
+            const qreal minHeaderRoleWidth = m_header->minimumRoleWidth();
+            QMutableHashIterator<QByteArray, QSizeF> it (m_visibleRolesSizes);
+            while (it.hasNext()) {
+                it.next();
+                const QSizeF& size = it.value();
+                if (size.width() < minHeaderRoleWidth) {
+                    const QSizeF newSize(minHeaderRoleWidth, size.height());
+                    m_visibleRolesSizes.insert(it.key(), newSize);
+                }
             }
         }
     } else {
index 76096dece569f45dd7299226d134ca582fde3327..6a6a51fb5833f4c178f8c97c5447c1d8b14fe5b8 100644 (file)
@@ -189,11 +189,16 @@ void DolphinItemListContainer::setItemLayout(KFileItemListView::Layout layout)
 
     switch (layout) {
     case KFileItemListView::IconsLayout:
+        m_fileItemListView->setScrollOrientation(Qt::Vertical);
+        m_fileItemListView->setHeaderShown(false);
+        break;
     case KFileItemListView::DetailsLayout:
         m_fileItemListView->setScrollOrientation(Qt::Vertical);
+        m_fileItemListView->setHeaderShown(true);
         break;
     case KFileItemListView::CompactLayout:
         m_fileItemListView->setScrollOrientation(Qt::Horizontal);
+        m_fileItemListView->setHeaderShown(false);
         break;
     default:
         Q_ASSERT(false);