commit 35fac4ab51e9f612c5d2fe8a9a04b684249d20b6
Author: Richard Kimberly Heck <rikih...@lyx.org>
Date:   Mon Oct 15 22:52:53 2018 -0400

    Re-organize and simplify now.
---
 src/frontends/qt4/LayoutBox.cpp |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/src/frontends/qt4/LayoutBox.cpp b/src/frontends/qt4/LayoutBox.cpp
index 992a4bf..66556d9 100644
--- a/src/frontends/qt4/LayoutBox.cpp
+++ b/src/frontends/qt4/LayoutBox.cpp
@@ -237,19 +237,22 @@ void LayoutItemDelegate::drawDisplay(QPainter * painter, 
QStyleOptionViewItem co
 QSize LayoutItemDelegate::sizeHint(QStyleOptionViewItem const & opt,
                                                                   QModelIndex 
const & index) const
 {
-       QSortFilterProxyModel const * model =
-               static_cast<QSortFilterProxyModel const *>(index.model());
        QSize size = QItemDelegate::sizeHint(opt, index);
+       if (!lyxrc.group_layouts)
+               return size;
 
-       // Add space for the category headers here?
-       // Not for the standard layout though.
-       QString stdCat = category(*model->sourceModel(), 0);
-       QString cat = category(*index.model(), index.row());
-       if (lyxrc.group_layouts && stdCat != cat
-               && (index.row() == 0 || cat != category(*index.model(), 
index.row() - 1))) {
-               size.setHeight(size.height() + headerHeight(opt));
-       }
+       // Add space for the category headers.
+       QSortFilterProxyModel const * const model =
+               static_cast<QSortFilterProxyModel const *>(index.model());
+       QString const stdCat = category(*model->sourceModel(), 0);
+       QString const cat = category(*index.model(), index.row());
+
+       // There is no header for the stuff at the top.
+       if (stdCat == cat)
+               return size;
 
+       if (index.row() == 0 || cat != category(*index.model(), index.row() - 
1))
+               size.setHeight(size.height() + headerHeight(opt));
        return size;
 }
 

Reply via email to