QRect KoDocumentSectionDelegate::thumbnailRect(const QStyleOptionViewItem &option, const QModelIndex &index) const { if (d->view->displayMode() == View::ThumbnailMode) return QRect(0, 0, option.rect.width(), thumbnailHeight(option, index)); else return QRect(0, 0, option.rect.height(), option.rect.height()); }
int StyleHelper::listViewItemHeight(int nType) { QFont f; switch (nType) { case ListTypeOneLine: return fontHead(f) + margin() * 4; case ListTypeTwoLine: return fontHead(f) + fontNormal(f) + margin() * 5; case ListTypeThumb: return thumbnailHeight() + margin() * 2; default: Q_ASSERT(0); return 0; } }
QSize KoDocumentSectionDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const { switch(d->view->displayMode()) { case View::ThumbnailMode: { const int height = thumbnailHeight(option, index) + textBoxHeight(option) + d->margin * 2; return QSize(availableWidth(), height); } case View::DetailedMode: return QSize(option.rect.width(), textBoxHeight(option) + option.decorationSize.height() + d->margin); case View::MinimalMode: return QSize(option.rect.width(), textBoxHeight(option)); default: return option.rect.size(); } }