diff options
| -rw-r--r-- | Swift/QtUI/Roster/RosterDelegate.cpp | 10 | 
1 files changed, 6 insertions, 4 deletions
| diff --git a/Swift/QtUI/Roster/RosterDelegate.cpp b/Swift/QtUI/Roster/RosterDelegate.cpp index 0353e2f..27ba3b4 100644 --- a/Swift/QtUI/Roster/RosterDelegate.cpp +++ b/Swift/QtUI/Roster/RosterDelegate.cpp @@ -29,9 +29,8 @@ QSize RosterDelegate::sizeHint(const QStyleOptionViewItem& option, const QModelI  }  QSize RosterDelegate::groupSizeHint(const QStyleOptionViewItem& option, const QModelIndex& index ) const { -	QFontMetrics nameMetrics(groupFont_); -	return QSize(150, nameMetrics.height() + 2); -	return QStyledItemDelegate::sizeHint(option, index); +	QFontMetrics groupMetrics(groupFont_); +	return QSize(150, groupMetrics.height() + 2);  }  QSize RosterDelegate::contactSizeHint(const QStyleOptionViewItem& option, const QModelIndex& index ) const { @@ -73,7 +72,10 @@ void RosterDelegate::paintGroup(QPainter* painter, const QStyleOptionViewItem& o  	linePath.addRoundedRect(region, groupCornerRadius_, groupCornerRadius_);  	painter->fillPath(fillPath, backgroundBrush);  	painter->drawPath(linePath); -	QRect textRect = region.adjusted(2 * horizontalMargin_ + 1, 0, -1 * horizontalMargin_, 0); +	int textLeftOffset = 2 * horizontalMargin_ + 1; +	QFontMetrics fontMetrics(groupFont_); +	int textTopOffset = (option.rect.height() - fontMetrics.height()) / 2; +	QRect textRect = region.adjusted(textLeftOffset, textTopOffset, -1 * textLeftOffset, -1 * textTopOffset);  	painter->setFont(groupFont_);  	painter->setPen(QPen(QColor(254, 254, 254)));  	painter->drawText(textRect.adjusted(0, 1, 0, 0), Qt::AlignTop, index.data(Qt::DisplayRole).toString()); | 
 Swift
 Swift