drop QStyleOptionViewItemV2, QStyleOptionViewItemV3 and QStyleOptionViewItemV4 typedefs

long overdue but the last bits of the versioned classes are no more

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2024-03-15 08:19:07 +02:00
parent f57ef4b15f
commit ef97a7f48e
24 changed files with 133 additions and 180 deletions

View file

@ -652,9 +652,6 @@ katie_generate_obsolete(QStyleOptionToolBar QtGui qstyleoption.h)
katie_generate_obsolete(QStyleOptionToolBox QtGui qstyleoption.h) katie_generate_obsolete(QStyleOptionToolBox QtGui qstyleoption.h)
katie_generate_obsolete(QStyleOptionToolButton QtGui qstyleoption.h) katie_generate_obsolete(QStyleOptionToolButton QtGui qstyleoption.h)
katie_generate_obsolete(QStyleOptionViewItem QtGui qstyleoption.h) katie_generate_obsolete(QStyleOptionViewItem QtGui qstyleoption.h)
katie_generate_obsolete(QStyleOptionViewItemV2 QtGui qstyleoption.h)
katie_generate_obsolete(QStyleOptionViewItemV3 QtGui qstyleoption.h)
katie_generate_obsolete(QStyleOptionViewItemV4 QtGui qstyleoption.h)
katie_generate_obsolete(QTableWidgetItem QtGui qtablewidget.h) katie_generate_obsolete(QTableWidgetItem QtGui qtablewidget.h)
katie_generate_obsolete(QTableWidgetSelectionRange QtGui qtablewidget.h) katie_generate_obsolete(QTableWidgetSelectionRange QtGui qtablewidget.h)
katie_generate_obsolete(QtAlgorithms QtCore qalgorithms.h) katie_generate_obsolete(QtAlgorithms QtCore qalgorithms.h)

View file

@ -543,9 +543,6 @@ include/katie/QtGui/QStyleOptionToolBar
include/katie/QtGui/QStyleOptionToolBox include/katie/QtGui/QStyleOptionToolBox
include/katie/QtGui/QStyleOptionToolButton include/katie/QtGui/QStyleOptionToolButton
include/katie/QtGui/QStyleOptionViewItem include/katie/QtGui/QStyleOptionViewItem
include/katie/QtGui/QStyleOptionViewItemV2
include/katie/QtGui/QStyleOptionViewItemV3
include/katie/QtGui/QStyleOptionViewItemV4
include/katie/QtGui/QStylePainter include/katie/QtGui/QStylePainter
include/katie/QtGui/QStylePlugin include/katie/QtGui/QStylePlugin
include/katie/QtGui/QStyledItemDelegate include/katie/QtGui/QStyledItemDelegate

View file

@ -205,9 +205,6 @@ incmap = {
'QStyleOptionToolBox': 'qstyleoption.h', 'QStyleOptionToolBox': 'qstyleoption.h',
'QStyleOptionToolButton': 'qstyleoption.h', 'QStyleOptionToolButton': 'qstyleoption.h',
'QStyleOptionViewItem': 'qstyleoption.h', 'QStyleOptionViewItem': 'qstyleoption.h',
'QStyleOptionViewItemV2': 'qstyleoption.h',
'QStyleOptionViewItemV3': 'qstyleoption.h',
'QStyleOptionViewItemV4': 'qstyleoption.h',
'QTableWidgetItem': 'qtablewidget.h', 'QTableWidgetItem': 'qtablewidget.h',
'QTableWidgetSelectionRange': 'qtablewidget.h', 'QTableWidgetSelectionRange': 'qtablewidget.h',
'QTextBlock': 'qtextobject.h', 'QTextBlock': 'qtextobject.h',

View file

@ -429,9 +429,6 @@ classlist = [
"QStyleOptionToolBox", "QStyleOptionToolBox",
"QStyleOptionToolButton", "QStyleOptionToolButton",
"QStyleOptionViewItem", "QStyleOptionViewItem",
"QStyleOptionViewItemV2",
"QStyleOptionViewItemV3",
"QStyleOptionViewItemV4",
"QStylePainter", "QStylePainter",
"QStylePlugin", "QStylePlugin",
"QStyledItemDelegate", "QStyledItemDelegate",

View file

@ -1552,7 +1552,7 @@ bool QAbstractItemView::viewportEvent(QEvent *event)
case QEvent::WhatsThis: { case QEvent::WhatsThis: {
QHelpEvent *he = static_cast<QHelpEvent*>(event); QHelpEvent *he = static_cast<QHelpEvent*>(event);
const QModelIndex index = indexAt(he->pos()); const QModelIndex index = indexAt(he->pos());
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
option.rect = visualRect(index); option.rect = visualRect(index);
option.state |= (index == currentIndex() ? QStyle::State_HasFocus : QStyle::State_None); option.state |= (index == currentIndex() ? QStyle::State_HasFocus : QStyle::State_None);
bool retval = false; bool retval = false;
@ -1747,7 +1747,7 @@ void QAbstractItemView::mouseReleaseEvent(QMouseEvent *event)
emit clicked(index); emit clicked(index);
if (edited) if (edited)
return; return;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
if (d->pressedAlreadySelected) if (d->pressedAlreadySelected)
option.state |= QStyle::State_Selected; option.state |= QStyle::State_Selected;
if (style()->styleHint(QStyle::SH_ItemView_ActivateItemOnSingleClick, &option, this)) if (style()->styleHint(QStyle::SH_ItemView_ActivateItemOnSingleClick, &option, this))
@ -2411,7 +2411,7 @@ void QAbstractItemView::updateEditorGeometries()
Q_D(QAbstractItemView); Q_D(QAbstractItemView);
if(d->editorIndexHash.isEmpty()) if(d->editorIndexHash.isEmpty())
return; return;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
QEditorIndexHash::iterator it = d->editorIndexHash.begin(); QEditorIndexHash::iterator it = d->editorIndexHash.begin();
QWidgetList editorsToRelease; QWidgetList editorsToRelease;
QWidgetList editorsToHide; QWidgetList editorsToHide;
@ -2738,7 +2738,7 @@ QSize QAbstractItemView::sizeHintForIndex(const QModelIndex &index) const
Q_D(const QAbstractItemView); Q_D(const QAbstractItemView);
if (!d->isIndexValid(index) || !d->itemDelegate) if (!d->isIndexValid(index) || !d->itemDelegate)
return QSize(); return QSize();
return d->delegateForIndex(index)->sizeHint(d->viewOptionsV4(), index); return d->delegateForIndex(index)->sizeHint(viewOptions(), index);
} }
/*! /*!
@ -2766,7 +2766,7 @@ int QAbstractItemView::sizeHintForRow(int row) const
ensurePolished(); ensurePolished();
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
int height = 0; int height = 0;
int colCount = d->model->columnCount(d->root); int colCount = d->model->columnCount(d->root);
QModelIndex index; QModelIndex index;
@ -2797,7 +2797,7 @@ int QAbstractItemView::sizeHintForColumn(int column) const
ensurePolished(); ensurePolished();
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
int width = 0; int width = 0;
int rows = d->model->rowCount(d->root); int rows = d->model->rowCount(d->root);
QModelIndex index; QModelIndex index;
@ -2820,7 +2820,7 @@ int QAbstractItemView::sizeHintForColumn(int column) const
void QAbstractItemView::openPersistentEditor(const QModelIndex &index) void QAbstractItemView::openPersistentEditor(const QModelIndex &index)
{ {
Q_D(QAbstractItemView); Q_D(QAbstractItemView);
QStyleOptionViewItemV4 options = d->viewOptionsV4(); QStyleOptionViewItem options = viewOptions();
options.rect = visualRect(index); options.rect = visualRect(index);
options.state |= (index == currentIndex() ? QStyle::State_HasFocus : QStyle::State_None); options.state |= (index == currentIndex() ? QStyle::State_HasFocus : QStyle::State_None);
@ -3318,18 +3318,11 @@ QStyleOptionViewItem QAbstractItemView::viewOptions() const
option.textElideMode = d->textElideMode; option.textElideMode = d->textElideMode;
option.rect = QRect(); option.rect = QRect();
option.showDecorationSelected = style()->styleHint(QStyle::SH_ItemView_ShowDecorationSelected, 0, this); option.showDecorationSelected = style()->styleHint(QStyle::SH_ItemView_ShowDecorationSelected, 0, this);
return option; if (d->wrapItemText)
} option.features = QStyleOptionViewItem::WrapText;
option.locale = locale();
QStyleOptionViewItemV4 QAbstractItemViewPrivate::viewOptionsV4() const
{
Q_Q(const QAbstractItemView);
QStyleOptionViewItemV4 option = q->viewOptions();
if (wrapItemText)
option.features = QStyleOptionViewItemV2::WrapText;
option.locale = q->locale();
option.locale.setNumberOptions(QLocale::OmitGroupSeparator); option.locale.setNumberOptions(QLocale::OmitGroupSeparator);
option.widget = q; option.widget = this;
return option; return option;
} }
@ -3915,7 +3908,7 @@ bool QAbstractItemViewPrivate::sendDelegateEvent(const QModelIndex &index, QEven
{ {
Q_Q(const QAbstractItemView); Q_Q(const QAbstractItemView);
QModelIndex buddy = model->buddy(index); QModelIndex buddy = model->buddy(index);
QStyleOptionViewItemV4 options = viewOptionsV4(); QStyleOptionViewItem options = q->viewOptions();
options.rect = q->visualRect(buddy); options.rect = q->visualRect(buddy);
options.state |= (buddy == q->currentIndex() ? QStyle::State_HasFocus : QStyle::State_None); options.state |= (buddy == q->currentIndex() ? QStyle::State_HasFocus : QStyle::State_None);
QAbstractItemDelegate *delegate = delegateForIndex(index); QAbstractItemDelegate *delegate = delegateForIndex(index);
@ -3927,7 +3920,7 @@ bool QAbstractItemViewPrivate::openEditor(const QModelIndex &index, QEvent *even
Q_Q(QAbstractItemView); Q_Q(QAbstractItemView);
QModelIndex buddy = model->buddy(index); QModelIndex buddy = model->buddy(index);
QStyleOptionViewItemV4 options = viewOptionsV4(); QStyleOptionViewItem options = q->viewOptions();
options.rect = q->visualRect(buddy); options.rect = q->visualRect(buddy);
options.state |= (buddy == q->currentIndex() ? QStyle::State_HasFocus : QStyle::State_None); options.state |= (buddy == q->currentIndex() ? QStyle::State_HasFocus : QStyle::State_None);
@ -3973,13 +3966,14 @@ QItemViewPaintPairs QAbstractItemViewPrivate::draggablePaintPairs(const QModelIn
QPixmap QAbstractItemViewPrivate::renderToPixmap(const QModelIndexList &indexes, QRect *r) const QPixmap QAbstractItemViewPrivate::renderToPixmap(const QModelIndexList &indexes, QRect *r) const
{ {
Q_ASSERT(r); Q_ASSERT(r);
Q_Q(const QAbstractItemView);
QItemViewPaintPairs paintPairs = draggablePaintPairs(indexes, r); QItemViewPaintPairs paintPairs = draggablePaintPairs(indexes, r);
if (paintPairs.isEmpty()) if (paintPairs.isEmpty())
return QPixmap(); return QPixmap();
QPixmap pixmap(r->size()); QPixmap pixmap(r->size());
pixmap.fill(Qt::transparent); pixmap.fill(Qt::transparent);
QPainter painter(&pixmap); QPainter painter(&pixmap);
QStyleOptionViewItemV4 option = viewOptionsV4(); QStyleOptionViewItem option = q->viewOptions();
option.state |= QStyle::State_Selected; option.state |= QStyle::State_Selected;
for (int j = 0; j < paintPairs.count(); ++j) { for (int j = 0; j < paintPairs.count(); ++j) {
option.rect = paintPairs.at(j).first.translated(-r->topLeft()); option.rect = paintPairs.at(j).first.translated(-r->topLeft());

View file

@ -161,7 +161,7 @@ public:
#endif #endif
virtual QItemViewPaintPairs draggablePaintPairs(const QModelIndexList &indexes, QRect *r) const; virtual QItemViewPaintPairs draggablePaintPairs(const QModelIndexList &indexes, QRect *r) const;
// reimplemented in subclasses // reimplemented in subclasses
virtual void adjustViewOptionsForIndex(QStyleOptionViewItemV4*, const QModelIndex&) const {} virtual void adjustViewOptionsForIndex(QStyleOptionViewItem*, const QModelIndex&) const {}
inline void releaseEditor(QWidget *editor) const { inline void releaseEditor(QWidget *editor) const {
if (editor) { if (editor) {
@ -304,8 +304,6 @@ public:
QModelIndexList selectedDraggableIndexes() const; QModelIndexList selectedDraggableIndexes() const;
QStyleOptionViewItemV4 viewOptionsV4() const;
void doDelayedReset() void doDelayedReset()
{ {
//we delay the reset of the timer because some views (QTableView) //we delay the reset of the timer because some views (QTableView)

View file

@ -1104,7 +1104,7 @@ void QColumnViewDelegate::paint(QPainter *painter,
bool reverse = (option.direction == Qt::RightToLeft); bool reverse = (option.direction == Qt::RightToLeft);
int width = ((option.rect.height() * 2) / 3); int width = ((option.rect.height() * 2) / 3);
// Modify the options to give us room to add an arrow // Modify the options to give us room to add an arrow
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
if (reverse) if (reverse)
opt.rect.adjust(width,0,0,0); opt.rect.adjust(width,0,0,0);
else else

View file

@ -85,14 +85,14 @@ public:
return text; return text;
} }
static QString valueToText(const QVariant &value, const QStyleOptionViewItemV4 &option); static QString valueToText(const QVariant &value, const QStyleOptionViewItem &option);
void _q_commitDataAndCloseEditor(QWidget *editor); void _q_commitDataAndCloseEditor(QWidget *editor);
QItemEditorFactory *f; QItemEditorFactory *f;
bool clipPainting; bool clipPainting;
QRect textLayoutBounds(const QStyleOptionViewItemV2 &options) const; QRect textLayoutBounds(const QStyleOptionViewItem &options) const;
QSizeF doTextLayout(int lineWidth) const; QSizeF doTextLayout(int lineWidth) const;
mutable QTextLayout textLayout; mutable QTextLayout textLayout;
mutable QTextOption textOption; mutable QTextOption textOption;
@ -112,10 +112,10 @@ void QItemDelegatePrivate::_q_commitDataAndCloseEditor(QWidget *editor)
emit q->closeEditor(editor, QAbstractItemDelegate::SubmitModelCache); emit q->closeEditor(editor, QAbstractItemDelegate::SubmitModelCache);
} }
QRect QItemDelegatePrivate::textLayoutBounds(const QStyleOptionViewItemV2 &option) const QRect QItemDelegatePrivate::textLayoutBounds(const QStyleOptionViewItem &option) const
{ {
QRect rect = option.rect; QRect rect = option.rect;
const bool wrapText = option.features & QStyleOptionViewItemV2::WrapText; const bool wrapText = option.features & QStyleOptionViewItem::WrapText;
switch (option.decorationPosition) { switch (option.decorationPosition) {
case QStyleOptionViewItem::Left: case QStyleOptionViewItem::Left:
case QStyleOptionViewItem::Right: case QStyleOptionViewItem::Right:
@ -305,7 +305,7 @@ void QItemDelegate::setClipping(bool clip)
d->clipPainting = clip; d->clipPainting = clip;
} }
QString QItemDelegatePrivate::valueToText(const QVariant &value, const QStyleOptionViewItemV4 &option) QString QItemDelegatePrivate::valueToText(const QVariant &value, const QStyleOptionViewItem &option)
{ {
QString text; QString text;
switch (value.userType()) { switch (value.userType()) {
@ -370,7 +370,7 @@ void QItemDelegate::paint(QPainter *painter,
Q_D(const QItemDelegate); Q_D(const QItemDelegate);
Q_ASSERT(index.isValid()); Q_ASSERT(index.isValid());
QStyleOptionViewItemV4 opt = setOptions(index, option); QStyleOptionViewItem opt = setOptions(index, option);
// prepare // prepare
painter->save(); painter->save();
@ -639,7 +639,7 @@ void QItemDelegate::drawDisplay(QPainter *painter, const QStyleOptionViewItem &o
QStyle *style = option.widget ? option.widget->style() : QApplication::style(); QStyle *style = option.widget ? option.widget->style() : QApplication::style();
const int textMargin = style->pixelMetric(QStyle::PM_FocusFrameHMargin, 0, option.widget) + 1; const int textMargin = style->pixelMetric(QStyle::PM_FocusFrameHMargin, 0, option.widget) + 1;
QRect textRect = rect.adjusted(textMargin, 0, -textMargin, 0); // remove width padding QRect textRect = rect.adjusted(textMargin, 0, -textMargin, 0); // remove width padding
const bool wrapText = option.features & QStyleOptionViewItemV2::WrapText; const bool wrapText = option.features & QStyleOptionViewItem::WrapText;
d->textOption.setWrapMode(wrapText ? QTextOption::WordWrap : QTextOption::NoWrap); d->textOption.setWrapMode(wrapText ? QTextOption::WordWrap : QTextOption::NoWrap);
d->textOption.setTextDirection(option.direction); d->textOption.setTextDirection(option.direction);
d->textOption.setAlignment(QStyle::visualAlignment(option.direction, option.displayAlignment)); d->textOption.setAlignment(QStyle::visualAlignment(option.direction, option.displayAlignment));

View file

@ -899,7 +899,7 @@ void QListView::paintEvent(QPaintEvent *e)
Q_D(QListView); Q_D(QListView);
if (!d->itemDelegate) if (!d->itemDelegate)
return; return;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
QPainter painter(d->viewport); QPainter painter(d->viewport);
const QVector<QModelIndex> toBeRendered = d->intersectingSet(e->rect().translated(horizontalOffset(), verticalOffset()), false); const QVector<QModelIndex> toBeRendered = d->intersectingSet(e->rect().translated(horizontalOffset(), verticalOffset()), false);
@ -968,9 +968,9 @@ void QListView::paintEvent(QPaintEvent *e)
} }
} }
if (alternateBase) { if (alternateBase) {
option.features |= QStyleOptionViewItemV2::Alternate; option.features |= QStyleOptionViewItem::Alternate;
} else { } else {
option.features &= ~QStyleOptionViewItemV2::Alternate; option.features &= ~QStyleOptionViewItem::Alternate;
} }
// draw background of the item (only alternate row). rest of the background // draw background of the item (only alternate row). rest of the background
@ -1409,7 +1409,7 @@ void QListView::updateGeometries()
verticalScrollBar()->setRange(0, 0); verticalScrollBar()->setRange(0, 0);
} else { } else {
QModelIndex index = d->model->index(0, d->column, d->root); QModelIndex index = d->model->index(0, d->column, d->root);
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
QSize step = d->itemSize(option, index); QSize step = d->itemSize(option, index);
d->commonListView->updateHorizontalScrollBar(step); d->commonListView->updateHorizontalScrollBar(step);
d->commonListView->updateVerticalScrollBar(step); d->commonListView->updateVerticalScrollBar(step);
@ -2240,7 +2240,7 @@ QListViewItem QListModeViewBase::indexToListViewItem(const QModelIndex &index) c
0, segmentStartRows.count() - 1); 0, segmentStartRows.count() - 1);
QStyleOptionViewItemV4 options = viewOptions(); QStyleOptionViewItem options = qq->viewOptions();
options.rect.setSize(contentsSize); options.rect.setSize(contentsSize);
QSize size = (uniformItemSizes() && cachedItemSize().isValid()) QSize size = (uniformItemSizes() && cachedItemSize().isValid())
? cachedItemSize() : itemSize(options, index); ? cachedItemSize() : itemSize(options, index);
@ -2305,7 +2305,7 @@ void QListModeViewBase::doStaticLayout(const QListViewLayoutInfo &info)
{ {
const bool useItemSize = !info.grid.isValid(); const bool useItemSize = !info.grid.isValid();
const QPoint topLeft = initStaticLayout(info); const QPoint topLeft = initStaticLayout(info);
QStyleOptionViewItemV4 option = viewOptions(); QStyleOptionViewItem option = qq->viewOptions();
option.rect = info.bounds; option.rect = info.bounds;
option.rect.adjust(info.spacing, info.spacing, -info.spacing, -info.spacing); option.rect.adjust(info.spacing, info.spacing, -info.spacing, -info.spacing);
@ -2759,7 +2759,7 @@ void QIconModeViewBase::scrollContentsBy(int dx, int dy, bool scrollElasticBand)
void QIconModeViewBase::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight) void QIconModeViewBase::dataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight)
{ {
if (column() >= topLeft.column() && column() <= bottomRight.column()) { if (column() >= topLeft.column() && column() <= bottomRight.column()) {
QStyleOptionViewItemV4 option = viewOptions(); QStyleOptionViewItem option = qq->viewOptions();
int bottom = qMin(items.count(), bottomRight.row() + 1); int bottom = qMin(items.count(), bottomRight.row() + 1);
for (int row = topLeft.row(); row < bottom; ++row) for (int row = topLeft.row(); row < bottom; ++row)
items[row].resize(itemSize(option, modelIndex(row))); items[row].resize(itemSize(option, modelIndex(row)));
@ -2769,8 +2769,8 @@ void QIconModeViewBase::dataChanged(const QModelIndex &topLeft, const QModelInde
bool QIconModeViewBase::doBatchedItemLayout(const QListViewLayoutInfo &info, int max) bool QIconModeViewBase::doBatchedItemLayout(const QListViewLayoutInfo &info, int max)
{ {
if (info.last >= items.count()) { if (info.last >= items.count()) {
//first we create the items // first we create the items
QStyleOptionViewItemV4 option = viewOptions(); QStyleOptionViewItem option = qq->viewOptions();
for (int row = items.count(); row <= info.last; ++row) { for (int row = items.count(); row <= info.last; ++row) {
QSize size = itemSize(option, modelIndex(row)); QSize size = itemSize(option, modelIndex(row));
QListViewItem item(QRect(0, 0, size.width(), size.height()), row); // default pos QListViewItem item(QRect(0, 0, size.width(), size.height()), row); // default pos

View file

@ -156,6 +156,9 @@ protected:
bool isIndexHidden(const QModelIndex &index) const; bool isIndexHidden(const QModelIndex &index) const;
private: private:
friend class QListModeViewBase;
friend class QIconModeViewBase;
int visualIndex(const QModelIndex &index) const; int visualIndex(const QModelIndex &index) const;
Q_DECLARE_PRIVATE(QListView) Q_DECLARE_PRIVATE(QListView)

View file

@ -156,13 +156,12 @@ public:
inline QModelIndex modelIndex(int row) const; inline QModelIndex modelIndex(int row) const;
inline int rowCount() const; inline int rowCount() const;
inline QStyleOptionViewItemV4 viewOptions() const;
inline QWidget *viewport() const; inline QWidget *viewport() const;
inline QRect clipRect() const; inline QRect clipRect() const;
inline QSize cachedItemSize() const; inline QSize cachedItemSize() const;
inline QRect viewItemRect(const QListViewItem &item) const; inline QRect viewItemRect(const QListViewItem &item) const;
inline QSize itemSize(const QStyleOptionViewItemV2 &opt, const QModelIndex &idx) const; inline QSize itemSize(const QStyleOptionViewItem &opt, const QModelIndex &idx) const;
inline QAbstractItemDelegate *delegate(const QModelIndex &idx) const; inline QAbstractItemDelegate *delegate(const QModelIndex &idx) const;
inline bool isHidden(int row) const; inline bool isHidden(int row) const;
@ -446,13 +445,12 @@ inline QModelIndex QCommonListViewBase::modelIndex(int row) const
{ return dd->model->index(row, dd->column, dd->root); } { return dd->model->index(row, dd->column, dd->root); }
inline int QCommonListViewBase::rowCount() const { return dd->model->rowCount(dd->root); } inline int QCommonListViewBase::rowCount() const { return dd->model->rowCount(dd->root); }
inline QStyleOptionViewItemV4 QCommonListViewBase::viewOptions() const { return dd->viewOptionsV4(); }
inline QWidget *QCommonListViewBase::viewport() const { return dd->viewport; } inline QWidget *QCommonListViewBase::viewport() const { return dd->viewport; }
inline QRect QCommonListViewBase::clipRect() const { return dd->clipRect(); } inline QRect QCommonListViewBase::clipRect() const { return dd->clipRect(); }
inline QSize QCommonListViewBase::cachedItemSize() const { return dd->cachedItemSize; } inline QSize QCommonListViewBase::cachedItemSize() const { return dd->cachedItemSize; }
inline QRect QCommonListViewBase::viewItemRect(const QListViewItem &item) const { return dd->viewItemRect(item); } inline QRect QCommonListViewBase::viewItemRect(const QListViewItem &item) const { return dd->viewItemRect(item); }
inline QSize QCommonListViewBase::itemSize(const QStyleOptionViewItemV2 &opt, const QModelIndex &idx) const inline QSize QCommonListViewBase::itemSize(const QStyleOptionViewItem &opt, const QModelIndex &idx) const
{ return dd->itemSize(opt, idx); } { return dd->itemSize(opt, idx); }
inline QAbstractItemDelegate *QCommonListViewBase::delegate(const QModelIndex &idx) const inline QAbstractItemDelegate *QCommonListViewBase::delegate(const QModelIndex &idx) const

View file

@ -277,9 +277,7 @@ QString QStyledItemDelegate::displayText(const QVariant &value, const QLocale& l
/*! /*!
Initialize \a option with the values using the index \a index. This method Initialize \a option with the values using the index \a index. This method
is useful for subclasses when they need a QStyleOptionViewItem, but don't want is useful for subclasses when they need a QStyleOptionViewItem, but don't want
to fill in all the information themselves. This function will check the version to fill in all the information themselves.
of the QStyleOptionViewItem and fill in the additional values for a
QStyleOptionViewItemV2, QStyleOptionViewItemV3 and QStyleOptionViewItemV4.
\sa QStyleOption::initFrom() \sa QStyleOption::initFrom()
*/ */
@ -303,13 +301,13 @@ void QStyledItemDelegate::initStyleOption(QStyleOptionViewItem *option,
option->index = index; option->index = index;
value = index.data(Qt::CheckStateRole); value = index.data(Qt::CheckStateRole);
if (value.isValid() && !value.isNull()) { if (value.isValid() && !value.isNull()) {
option->features |= QStyleOptionViewItemV2::HasCheckIndicator; option->features |= QStyleOptionViewItem::HasCheckIndicator;
option->checkState = static_cast<Qt::CheckState>(value.toInt()); option->checkState = static_cast<Qt::CheckState>(value.toInt());
} }
value = index.data(Qt::DecorationRole); value = index.data(Qt::DecorationRole);
if (value.isValid() && !value.isNull()) { if (value.isValid() && !value.isNull()) {
option->features |= QStyleOptionViewItemV2::HasDecoration; option->features |= QStyleOptionViewItem::HasDecoration;
switch (value.type()) { switch (value.type()) {
case QVariant::Icon: { case QVariant::Icon: {
option->icon = qvariant_cast<QIcon>(value); option->icon = qvariant_cast<QIcon>(value);
@ -349,7 +347,7 @@ void QStyledItemDelegate::initStyleOption(QStyleOptionViewItem *option,
value = index.data(Qt::DisplayRole); value = index.data(Qt::DisplayRole);
if (value.isValid() && !value.isNull()) { if (value.isValid() && !value.isNull()) {
option->features |= QStyleOptionViewItemV2::HasDisplay; option->features |= QStyleOptionViewItem::HasDisplay;
option->text = displayText(value, option->locale); option->text = displayText(value, option->locale);
} }
@ -365,7 +363,7 @@ void QStyledItemDelegate::initStyleOption(QStyleOptionViewItem *option,
When reimplementing paint in a subclass. Use the initStyleOption() When reimplementing paint in a subclass. Use the initStyleOption()
to set up the \a option in the same way as the to set up the \a option in the same way as the
QStyledItemDelegate; the option will always be an instance of QStyledItemDelegate; the option will always be an instance of
QStyleOptionViewItemV4. Please see its class description for QStyleOptionViewItem. Please see its class description for
information on its contents. information on its contents.
Whenever possible, use the \a option while painting. Whenever possible, use the \a option while painting.
@ -385,7 +383,7 @@ void QStyledItemDelegate::paint(QPainter *painter,
{ {
Q_ASSERT(index.isValid()); Q_ASSERT(index.isValid());
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
initStyleOption(&opt, index); initStyleOption(&opt, index);
QStyle *style = option.widget ? option.widget->style() : QApplication::style(); QStyle *style = option.widget ? option.widget->style() : QApplication::style();
@ -409,7 +407,7 @@ QSize QStyledItemDelegate::sizeHint(const QStyleOptionViewItem &option,
if (value.isValid()) if (value.isValid())
return qvariant_cast<QSize>(value); return qvariant_cast<QSize>(value);
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
initStyleOption(&opt, index); initStyleOption(&opt, index);
QStyle *style = option.widget ? option.widget->style() : QApplication::style(); QStyle *style = option.widget ? option.widget->style() : QApplication::style();
@ -520,7 +518,7 @@ void QStyledItemDelegate::updateEditorGeometry(QWidget *editor,
Q_ASSERT(index.isValid()); Q_ASSERT(index.isValid());
const QWidget *widget = option.widget; const QWidget *widget = option.widget;
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
initStyleOption(&opt, index); initStyleOption(&opt, index);
// let the editor take up all available space // let the editor take up all available space
//if the editor is not a QLineEdit //if the editor is not a QLineEdit
@ -696,7 +694,7 @@ bool QStyledItemDelegate::editorEvent(QEvent *event,
if ((event->type() == QEvent::MouseButtonRelease) if ((event->type() == QEvent::MouseButtonRelease)
|| (event->type() == QEvent::MouseButtonDblClick) || (event->type() == QEvent::MouseButtonDblClick)
|| (event->type() == QEvent::MouseButtonPress)) { || (event->type() == QEvent::MouseButtonPress)) {
QStyleOptionViewItemV4 viewOpt(option); QStyleOptionViewItem viewOpt(option);
initStyleOption(&viewOpt, index); initStyleOption(&viewOpt, index);
QRect checkRect = style->subElementRect(QStyle::SE_ItemViewItemCheckIndicator, &viewOpt, option.widget); QRect checkRect = style->subElementRect(QStyle::SE_ItemViewItemCheckIndicator, &viewOpt, option.widget);
QMouseEvent *me = static_cast<QMouseEvent*>(event); QMouseEvent *me = static_cast<QMouseEvent*>(event);

View file

@ -733,7 +733,7 @@ QRect QTableViewPrivate::visualSpanRect(const QSpanCollection::Span &span) const
\a drawn is a QBitArray of visualRowCountxvisualCoulumnCount which say if particular cell has been drawn \a drawn is a QBitArray of visualRowCountxvisualCoulumnCount which say if particular cell has been drawn
*/ */
void QTableViewPrivate::drawAndClipSpans(const QRegion &area, QPainter *painter, void QTableViewPrivate::drawAndClipSpans(const QRegion &area, QPainter *painter,
const QStyleOptionViewItemV4 &option, QBitArray *drawn, const QStyleOptionViewItem &option, QBitArray *drawn,
int firstVisualRow, int lastVisualRow, int firstVisualColumn, int lastVisualColumn) int firstVisualRow, int lastVisualRow, int firstVisualColumn, int lastVisualColumn)
{ {
bool alternateBase = false; bool alternateBase = false;
@ -765,13 +765,13 @@ void QTableViewPrivate::drawAndClipSpans(const QRegion &area, QPainter *painter,
rect.translate(scrollDelayOffset); rect.translate(scrollDelayOffset);
if (!area.intersects(rect)) if (!area.intersects(rect))
continue; continue;
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
opt.rect = rect; opt.rect = rect;
alternateBase = alternatingColors && (span->top() & 1); alternateBase = alternatingColors && (span->top() & 1);
if (alternateBase) if (alternateBase)
opt.features |= QStyleOptionViewItemV2::Alternate; opt.features |= QStyleOptionViewItem::Alternate;
else else
opt.features &= ~QStyleOptionViewItemV2::Alternate; opt.features &= ~QStyleOptionViewItem::Alternate;
drawCell(painter, opt, index); drawCell(painter, opt, index);
region -= rect; region -= rect;
for (int r = span->top(); r <= span->bottom(); ++r) { for (int r = span->top(); r <= span->bottom(); ++r) {
@ -835,10 +835,10 @@ void QTableViewPrivate::_q_updateSpanRemovedColumns(const QModelIndex &parent, i
\internal \internal
Draws a table cell. Draws a table cell.
*/ */
void QTableViewPrivate::drawCell(QPainter *painter, const QStyleOptionViewItemV4 &option, const QModelIndex &index) void QTableViewPrivate::drawCell(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index)
{ {
Q_Q(QTableView); Q_Q(QTableView);
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
if (selectionModel && selectionModel->isSelected(index)) if (selectionModel && selectionModel->isSelected(index))
opt.state |= QStyle::State_Selected; opt.state |= QStyle::State_Selected;
@ -1233,7 +1233,7 @@ void QTableView::paintEvent(QPaintEvent *event)
{ {
Q_D(QTableView); Q_D(QTableView);
// setup temp variables for the painting // setup temp variables for the painting
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
const QPoint offset = d->scrollDelayOffset; const QPoint offset = d->scrollDelayOffset;
const bool showGrid = d->showGrid; const bool showGrid = d->showGrid;
const int gridSize = showGrid ? 1 : 0; const int gridSize = showGrid ? 1 : 0;
@ -1349,9 +1349,9 @@ void QTableView::paintEvent(QPaintEvent *event)
option.rect = QRect(colp + (showGrid && rightToLeft ? 1 : 0), rowY, colw, rowh); option.rect = QRect(colp + (showGrid && rightToLeft ? 1 : 0), rowY, colw, rowh);
if (alternate) { if (alternate) {
if (alternateBase) if (alternateBase)
option.features |= QStyleOptionViewItemV2::Alternate; option.features |= QStyleOptionViewItem::Alternate;
else else
option.features &= ~QStyleOptionViewItemV2::Alternate; option.features &= ~QStyleOptionViewItem::Alternate;
} }
d->drawCell(&painter, option, index); d->drawCell(&painter, option, index);
} }
@ -2094,7 +2094,7 @@ int QTableView::sizeHintForRow(int row) const
if (right == -1) // the table don't have enough columns to fill the viewport if (right == -1) // the table don't have enough columns to fill the viewport
right = d->model->columnCount(d->root) - 1; right = d->model->columnCount(d->root) - 1;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
int hint = 0; int hint = 0;
QModelIndex index; QModelIndex index;
@ -2153,7 +2153,7 @@ int QTableView::sizeHintForColumn(int column) const
if (!isVisible() || bottom == -1) // the table don't have enough rows to fill the viewport if (!isVisible() || bottom == -1) // the table don't have enough rows to fill the viewport
bottom = d->model->rowCount(d->root) - 1; bottom = d->model->rowCount(d->root) - 1;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
int hint = 0; int hint = 0;
QModelIndex index; QModelIndex index;

View file

@ -151,9 +151,9 @@ public:
int sectionSpanSize(const QHeaderView *header, int logical, int span) const; int sectionSpanSize(const QHeaderView *header, int logical, int span) const;
bool spanContainsSection(const QHeaderView *header, int logical, int spanLogical, int span) const; bool spanContainsSection(const QHeaderView *header, int logical, int spanLogical, int span) const;
void drawAndClipSpans(const QRegion &area, QPainter *painter, void drawAndClipSpans(const QRegion &area, QPainter *painter,
const QStyleOptionViewItemV4 &option, QBitArray *drawn, const QStyleOptionViewItem &option, QBitArray *drawn,
int firstVisualRow, int lastVisualRow, int firstVisualColumn, int lastVisualColumn); int firstVisualRow, int lastVisualRow, int firstVisualColumn, int lastVisualColumn);
void drawCell(QPainter *painter, const QStyleOptionViewItemV4 &option, const QModelIndex &index); void drawCell(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index);
bool showGrid; bool showGrid;
Qt::PenStyle gridStyle; Qt::PenStyle gridStyle;

View file

@ -1249,7 +1249,7 @@ void QTreeView::paintEvent(QPaintEvent *event)
} }
} }
void QTreeViewPrivate::paintAlternatingRowColors(QPainter *painter, QStyleOptionViewItemV4 *option, int y, int bottom) const void QTreeViewPrivate::paintAlternatingRowColors(QPainter *painter, QStyleOptionViewItem *option, int y, int bottom) const
{ {
Q_Q(const QTreeView); Q_Q(const QTreeView);
if (!alternatingColors || !q->style()->styleHint(QStyle::SH_ItemView_PaintAlternatingRowColorsForEmptyArea, option, q)) if (!alternatingColors || !q->style()->styleHint(QStyle::SH_ItemView_PaintAlternatingRowColorsForEmptyArea, option, q))
@ -1263,9 +1263,9 @@ void QTreeViewPrivate::paintAlternatingRowColors(QPainter *painter, QStyleOption
while (y <= bottom) { while (y <= bottom) {
option->rect.setRect(0, y, viewport->width(), rowHeight); option->rect.setRect(0, y, viewport->width(), rowHeight);
if (current & 1) { if (current & 1) {
option->features |= QStyleOptionViewItemV2::Alternate; option->features |= QStyleOptionViewItem::Alternate;
} else { } else {
option->features &= ~QStyleOptionViewItemV2::Alternate; option->features &= ~QStyleOptionViewItem::Alternate;
} }
++current; ++current;
q->style()->drawPrimitive(QStyle::PE_PanelItemViewRow, option, painter, q); q->style()->drawPrimitive(QStyle::PE_PanelItemViewRow, option, painter, q);
@ -1325,7 +1325,7 @@ QItemViewPaintPairs QTreeViewPrivate::draggablePaintPairs(const QModelIndexList
return QAbstractItemViewPrivate::draggablePaintPairs(list, r); return QAbstractItemViewPrivate::draggablePaintPairs(list, r);
} }
void QTreeViewPrivate::adjustViewOptionsForIndex(QStyleOptionViewItemV4 *option, const QModelIndex &current) const void QTreeViewPrivate::adjustViewOptionsForIndex(QStyleOptionViewItem *option, const QModelIndex &current) const
{ {
const int row = viewIndex(current); // get the index in viewItems[] const int row = viewIndex(current); // get the index in viewItems[]
option->state = option->state | (viewItems.at(row).expanded ? QStyle::State_Open : QStyle::State_None) option->state = option->state | (viewItems.at(row).expanded ? QStyle::State_Open : QStyle::State_None)
@ -1336,7 +1336,7 @@ void QTreeViewPrivate::adjustViewOptionsForIndex(QStyleOptionViewItemV4 *option,
|| option->showDecorationSelected; || option->showDecorationSelected;
QVector<int> logicalIndices; // index = visual index of visible columns only. data = logical index. QVector<int> logicalIndices; // index = visual index of visible columns only. data = logical index.
QVector<QStyleOptionViewItemV4::ViewItemPosition> viewItemPosList; // vector of left/middle/end for each logicalIndex, visible columns only. QVector<QStyleOptionViewItem::ViewItemPosition> viewItemPosList; // vector of left/middle/end for each logicalIndex, visible columns only.
const bool spanning = viewItems.at(row).spanning; const bool spanning = viewItems.at(row).spanning;
const int left = (spanning ? header->visualIndex(0) : 0); const int left = (spanning ? header->visualIndex(0) : 0);
const int right = (spanning ? header->visualIndex(0) : header->count() - 1 ); const int right = (spanning ? header->visualIndex(0) : header->count() - 1 );
@ -1359,7 +1359,7 @@ void QTreeView::drawTree(QPainter *painter, const QRegion &region) const
Q_D(const QTreeView); Q_D(const QTreeView);
const QVector<QTreeViewItem> viewItems = d->viewItems; const QVector<QTreeViewItem> viewItems = d->viewItems;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
const QStyle::State state = option.state; const QStyle::State state = option.state;
d->current = 0; d->current = 0;
@ -1434,12 +1434,12 @@ static inline bool ancestorOf(QObject *widget, QObject *other)
return false; return false;
} }
void QTreeViewPrivate::calcLogicalIndices(QVector<int> *logicalIndices, QVector<QStyleOptionViewItemV4::ViewItemPosition> *itemPositions, int left, int right) const void QTreeViewPrivate::calcLogicalIndices(QVector<int> *logicalIndices, QVector<QStyleOptionViewItem::ViewItemPosition> *itemPositions, int left, int right) const
{ {
const int columnCount = header->count(); const int columnCount = header->count();
/* 'left' and 'right' are the left-most and right-most visible visual indices. /* 'left' and 'right' are the left-most and right-most visible visual indices.
Compute the first visible logical indices before and after the left and right. Compute the first visible logical indices before and after the left and right.
We will use these values to determine the QStyleOptionViewItemV4::viewItemPosition. */ We will use these values to determine the QStyleOptionViewItem::viewItemPosition. */
int logicalIndexBeforeLeft = -1, logicalIndexAfterRight = -1; int logicalIndexBeforeLeft = -1, logicalIndexAfterRight = -1;
for (int visualIndex = left - 1; visualIndex >= 0; --visualIndex) { for (int visualIndex = left - 1; visualIndex >= 0; --visualIndex) {
int logicalIndex = header->logicalIndex(visualIndex); int logicalIndex = header->logicalIndex(visualIndex);
@ -1470,16 +1470,16 @@ void QTreeViewPrivate::calcLogicalIndices(QVector<int> *logicalIndices, QVector<
int prevLogicalSection = currentLogicalSection - 1 < 0 int prevLogicalSection = currentLogicalSection - 1 < 0
? logicalIndexBeforeLeft ? logicalIndexBeforeLeft
: logicalIndices->at(currentLogicalSection - 1); : logicalIndices->at(currentLogicalSection - 1);
QStyleOptionViewItemV4::ViewItemPosition pos; QStyleOptionViewItem::ViewItemPosition pos;
if (columnCount == 1 || (nextLogicalSection == 0 && prevLogicalSection == -1) if (columnCount == 1 || (nextLogicalSection == 0 && prevLogicalSection == -1)
|| (headerSection == 0 && nextLogicalSection == -1) || spanning) || (headerSection == 0 && nextLogicalSection == -1) || spanning)
pos = QStyleOptionViewItemV4::OnlyOne; pos = QStyleOptionViewItem::OnlyOne;
else if (headerSection == 0 || (nextLogicalSection != 0 && prevLogicalSection == -1)) else if (headerSection == 0 || (nextLogicalSection != 0 && prevLogicalSection == -1))
pos = QStyleOptionViewItemV4::Beginning; pos = QStyleOptionViewItem::Beginning;
else if (nextLogicalSection == 0 || nextLogicalSection == -1) else if (nextLogicalSection == 0 || nextLogicalSection == -1)
pos = QStyleOptionViewItemV4::End; pos = QStyleOptionViewItem::End;
else else
pos = QStyleOptionViewItemV4::Middle; pos = QStyleOptionViewItem::Middle;
(*itemPositions)[currentLogicalSection] = pos; (*itemPositions)[currentLogicalSection] = pos;
} }
} }
@ -1496,7 +1496,7 @@ void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option,
const QModelIndex &index) const const QModelIndex &index) const
{ {
Q_D(const QTreeView); Q_D(const QTreeView);
QStyleOptionViewItemV4 opt = option; QStyleOptionViewItem opt = option;
const QPoint offset = d->scrollDelayOffset; const QPoint offset = d->scrollDelayOffset;
const int y = option.rect.y() + offset.y(); const int y = option.rect.y() + offset.y();
const QModelIndex parent = index.parent(); const QModelIndex parent = index.parent();
@ -1558,7 +1558,7 @@ void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option,
&& index.row() == hover.row(); && index.row() == hover.row();
QVector<int> logicalIndices; QVector<int> logicalIndices;
QVector<QStyleOptionViewItemV4::ViewItemPosition> viewItemPosList; // vector of left/middle/end for each logicalIndex QVector<QStyleOptionViewItem::ViewItemPosition> viewItemPosList; // vector of left/middle/end for each logicalIndex
d->calcLogicalIndices(&logicalIndices, &viewItemPosList, left, right); d->calcLogicalIndices(&logicalIndices, &viewItemPosList, left, right);
for (int currentLogicalSection = 0; currentLogicalSection < logicalIndices.count(); ++currentLogicalSection) { for (int currentLogicalSection = 0; currentLogicalSection < logicalIndices.count(); ++currentLogicalSection) {
@ -1616,9 +1616,9 @@ void QTreeView::drawRow(QPainter *painter, const QStyleOptionViewItem &option,
if (alternate) { if (alternate) {
if (d->current & 1) { if (d->current & 1) {
opt.features |= QStyleOptionViewItemV2::Alternate; opt.features |= QStyleOptionViewItem::Alternate;
} else { } else {
opt.features &= ~QStyleOptionViewItemV2::Alternate; opt.features &= ~QStyleOptionViewItem::Alternate;
} }
} }
@ -1706,7 +1706,7 @@ void QTreeView::drawBranches(QPainter *painter, const QRect &rect,
QModelIndex current = parent; QModelIndex current = parent;
QModelIndex ancestor = current.parent(); QModelIndex ancestor = current.parent();
QStyleOptionViewItemV2 opt = viewOptions(); QStyleOptionViewItem opt = viewOptions();
QStyle::State extraFlags = QStyle::State_None; QStyle::State extraFlags = QStyle::State_None;
if (isEnabled()) if (isEnabled())
extraFlags |= QStyle::State_Enabled; extraFlags |= QStyle::State_Enabled;
@ -1718,9 +1718,9 @@ void QTreeView::drawBranches(QPainter *painter, const QRect &rect,
if (d->alternatingColors) { if (d->alternatingColors) {
if (d->current & 1) { if (d->current & 1) {
opt.features |= QStyleOptionViewItemV2::Alternate; opt.features |= QStyleOptionViewItem::Alternate;
} else { } else {
opt.features &= ~QStyleOptionViewItemV2::Alternate; opt.features &= ~QStyleOptionViewItem::Alternate;
} }
} }
@ -2651,7 +2651,7 @@ int QTreeView::sizeHintForColumn(int column) const
return -1; return -1;
ensurePolished(); ensurePolished();
int w = 0; int w = 0;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
const QVector<QTreeViewItem> viewItems = d->viewItems; const QVector<QTreeViewItem> viewItems = d->viewItems;
int start = 0; int start = 0;
@ -2718,7 +2718,7 @@ int QTreeView::indexRowSizeHint(const QModelIndex &index) const
qSwap(end, start); qSwap(end, start);
int height = -1; int height = -1;
QStyleOptionViewItemV4 option = d->viewOptionsV4(); QStyleOptionViewItem option = viewOptions();
// ### If we want word wrapping in the items, // ### If we want word wrapping in the items,
// ### we need to go through all the columns // ### we need to go through all the columns
// ### and set the width of the column // ### and set the width of the column
@ -2975,7 +2975,7 @@ QPixmap QTreeViewPrivate::renderTreeToPixmapForAnimation(const QRect &rect) cons
painter.end(); painter.end();
//and now let's render the editors the editors //and now let's render the editors the editors
QStyleOptionViewItemV4 option = viewOptionsV4(); QStyleOptionViewItem option = q->viewOptions();
for (QEditorIndexHash::const_iterator it = editorIndexHash.constBegin(); it != editorIndexHash.constEnd(); ++it) { for (QEditorIndexHash::const_iterator it = editorIndexHash.constBegin(); it != editorIndexHash.constEnd(); ++it) {
QWidget *editor = it.key(); QWidget *editor = it.key();
const QModelIndex &index = it.value(); const QModelIndex &index = it.value();

View file

@ -77,7 +77,7 @@ public:
void initialize(); void initialize();
QItemViewPaintPairs draggablePaintPairs(const QModelIndexList &indexes, QRect *r) const; QItemViewPaintPairs draggablePaintPairs(const QModelIndexList &indexes, QRect *r) const;
void adjustViewOptionsForIndex(QStyleOptionViewItemV4 *option, const QModelIndex &current) const; void adjustViewOptionsForIndex(QStyleOptionViewItem *option, const QModelIndex &current) const;
#ifndef QT_NO_ANIMATION #ifndef QT_NO_ANIMATION
struct AnimatedOperation : public QVariantAnimation struct AnimatedOperation : public QVariantAnimation
@ -146,11 +146,11 @@ public:
void updateChildCount(const int parentItem, const int delta); void updateChildCount(const int parentItem, const int delta);
void paintAlternatingRowColors(QPainter *painter, QStyleOptionViewItemV4 *option, int y, int bottom) const; void paintAlternatingRowColors(QPainter *painter, QStyleOptionViewItem *option, int y, int bottom) const;
// logicalIndices: vector of currently visibly logical indices // logicalIndices: vector of currently visibly logical indices
// itemPositions: vector of view item positions (beginning/middle/end/onlyone) // itemPositions: vector of view item positions (beginning/middle/end/onlyone)
void calcLogicalIndices(QVector<int> *logicalIndices, QVector<QStyleOptionViewItemV4::ViewItemPosition> *itemPositions, int left, int right) const; void calcLogicalIndices(QVector<int> *logicalIndices, QVector<QStyleOptionViewItem::ViewItemPosition> *itemPositions, int left, int right) const;
QHeaderView *header; QHeaderView *header;
int indent; int indent;

View file

@ -606,7 +606,7 @@ void QCommonStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, Q
} }
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
case PE_PanelItemViewRow: { case PE_PanelItemViewRow: {
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
QPalette::ColorGroup cg = (widget ? widget->isEnabled() : (vopt->state & QStyle::State_Enabled)) QPalette::ColorGroup cg = (widget ? widget->isEnabled() : (vopt->state & QStyle::State_Enabled))
? QPalette::Normal : QPalette::Disabled; ? QPalette::Normal : QPalette::Disabled;
if (cg == QPalette::Normal && !(vopt->state & QStyle::State_Active)) if (cg == QPalette::Normal && !(vopt->state & QStyle::State_Active))
@ -614,13 +614,13 @@ void QCommonStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt, Q
if ((vopt->state & QStyle::State_Selected) && proxy()->styleHint(QStyle::SH_ItemView_ShowDecorationSelected, opt, widget)) if ((vopt->state & QStyle::State_Selected) && proxy()->styleHint(QStyle::SH_ItemView_ShowDecorationSelected, opt, widget))
p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::Highlight)); p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::Highlight));
else if (vopt->features & QStyleOptionViewItemV2::Alternate) else if (vopt->features & QStyleOptionViewItem::Alternate)
p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::AlternateBase)); p->fillRect(vopt->rect, vopt->palette.brush(cg, QPalette::AlternateBase));
} }
break; break;
} }
case PE_PanelItemViewItem: { case PE_PanelItemViewItem: {
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
QPalette::ColorGroup cg = (widget ? widget->isEnabled() : (vopt->state & QStyle::State_Enabled)) QPalette::ColorGroup cg = (widget ? widget->isEnabled() : (vopt->state & QStyle::State_Enabled))
? QPalette::Normal : QPalette::Disabled; ? QPalette::Normal : QPalette::Disabled;
if (cg == QPalette::Normal && !(vopt->state & QStyle::State_Active)) if (cg == QPalette::Normal && !(vopt->state & QStyle::State_Active))
@ -686,23 +686,23 @@ static void drawArrow(const QStyle *style, const QStyleOptionToolButton *toolbut
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
QSize QCommonStylePrivate::viewItemSize(const QStyleOptionViewItemV4 *option, int role) const QSize QCommonStylePrivate::viewItemSize(const QStyleOptionViewItem *option, int role) const
{ {
switch (role) { switch (role) {
case Qt::CheckStateRole: case Qt::CheckStateRole:
if (option->features & QStyleOptionViewItemV2::HasCheckIndicator) if (option->features & QStyleOptionViewItem::HasCheckIndicator)
return QSize(proxyStyle->pixelMetric(QStyle::PM_IndicatorWidth, option, option->widget), return QSize(proxyStyle->pixelMetric(QStyle::PM_IndicatorWidth, option, option->widget),
proxyStyle->pixelMetric(QStyle::PM_IndicatorHeight, option, option->widget)); proxyStyle->pixelMetric(QStyle::PM_IndicatorHeight, option, option->widget));
break; break;
case Qt::DisplayRole: case Qt::DisplayRole:
if (option->features & QStyleOptionViewItemV2::HasDisplay) { if (option->features & QStyleOptionViewItem::HasDisplay) {
QTextOption textOption; QTextOption textOption;
textOption.setWrapMode(QTextOption::WordWrap); textOption.setWrapMode(QTextOption::WordWrap);
QTextLayout textLayout; QTextLayout textLayout;
textLayout.setTextOption(textOption); textLayout.setTextOption(textOption);
textLayout.setFont(option->font); textLayout.setFont(option->font);
textLayout.setText(option->text); textLayout.setText(option->text);
const bool wrapText = option->features & QStyleOptionViewItemV2::WrapText; const bool wrapText = option->features & QStyleOptionViewItem::WrapText;
const int textMargin = proxyStyle->pixelMetric(QStyle::PM_FocusFrameHMargin, option, option->widget) + 1; const int textMargin = proxyStyle->pixelMetric(QStyle::PM_FocusFrameHMargin, option, option->widget) + 1;
QRect bounds = option->rect; QRect bounds = option->rect;
switch (option->decorationPosition) { switch (option->decorationPosition) {
@ -738,7 +738,7 @@ QSize QCommonStylePrivate::viewItemSize(const QStyleOptionViewItemV4 *option, in
} }
break; break;
case Qt::DecorationRole: case Qt::DecorationRole:
if (option->features & QStyleOptionViewItemV2::HasDecoration) { if (option->features & QStyleOptionViewItem::HasDecoration) {
return option->decorationSize; return option->decorationSize;
} }
break; break;
@ -768,12 +768,12 @@ static QSizeF viewItemTextLayout(QTextLayout &textLayout, int lineWidth)
} }
void QCommonStylePrivate::viewItemDrawText(QPainter *p, const QStyleOptionViewItemV4 *option, const QRect &rect) const void QCommonStylePrivate::viewItemDrawText(QPainter *p, const QStyleOptionViewItem *option, const QRect &rect) const
{ {
const int textMargin = proxyStyle->pixelMetric(QStyle::PM_FocusFrameHMargin, 0, option->widget) + 1; const int textMargin = proxyStyle->pixelMetric(QStyle::PM_FocusFrameHMargin, 0, option->widget) + 1;
QRect textRect = rect.adjusted(textMargin, 0, -textMargin, 0); // remove width padding QRect textRect = rect.adjusted(textMargin, 0, -textMargin, 0); // remove width padding
const bool wrapText = option->features & QStyleOptionViewItemV2::WrapText; const bool wrapText = option->features & QStyleOptionViewItem::WrapText;
QTextOption textOption; QTextOption textOption;
textOption.setWrapMode(wrapText ? QTextOption::WordWrap : QTextOption::NoWrap); textOption.setWrapMode(wrapText ? QTextOption::WordWrap : QTextOption::NoWrap);
textOption.setTextDirection(option->direction); textOption.setTextDirection(option->direction);
@ -847,7 +847,7 @@ void QCommonStylePrivate::viewItemDrawText(QPainter *p, const QStyleOptionViewIt
Code duplicated in QItemDelegate::doLayout Code duplicated in QItemDelegate::doLayout
*/ */
void QCommonStylePrivate::viewItemLayout(const QStyleOptionViewItemV4 *opt, QRect *checkRect, void QCommonStylePrivate::viewItemLayout(const QStyleOptionViewItem *opt, QRect *checkRect,
QRect *pixmapRect, QRect *textRect, bool sizehint) const QRect *pixmapRect, QRect *textRect, bool sizehint) const
{ {
Q_ASSERT(checkRect && pixmapRect && textRect); Q_ASSERT(checkRect && pixmapRect && textRect);
@ -1994,7 +1994,7 @@ void QCommonStyle::drawControl(ControlElement element, const QStyleOption *opt,
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
case CE_ItemViewItem: case CE_ItemViewItem:
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
p->save(); p->save();
p->setClipRect(opt->rect); p->setClipRect(opt->rect);
@ -2006,8 +2006,8 @@ void QCommonStyle::drawControl(ControlElement element, const QStyleOption *opt,
proxy()->drawPrimitive(PE_PanelItemViewItem, opt, p, widget); proxy()->drawPrimitive(PE_PanelItemViewItem, opt, p, widget);
// draw the check mark // draw the check mark
if (vopt->features & QStyleOptionViewItemV2::HasCheckIndicator) { if (vopt->features & QStyleOptionViewItem::HasCheckIndicator) {
QStyleOptionViewItemV4 option(*vopt); QStyleOptionViewItem option(*vopt);
option.rect = checkRect; option.rect = checkRect;
option.state = option.state & ~QStyle::State_HasFocus; option.state = option.state & ~QStyle::State_HasFocus;
@ -2824,21 +2824,21 @@ QRect QCommonStyle::subElementRect(SubElement sr, const QStyleOption *opt,
#endif #endif
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
case SE_ItemViewItemCheckIndicator: case SE_ItemViewItemCheckIndicator:
if (!qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (!qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
r = subElementRect(SE_CheckBoxIndicator, opt, widget); r = subElementRect(SE_CheckBoxIndicator, opt, widget);
break; break;
} }
case SE_ItemViewItemDecoration: case SE_ItemViewItemDecoration:
case SE_ItemViewItemText: case SE_ItemViewItemText:
case SE_ItemViewItemFocusRect: case SE_ItemViewItemFocusRect:
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
if (!d->isViewItemCached(*vopt)) { if (!d->isViewItemCached(*vopt)) {
d->viewItemLayout(vopt, &d->checkRect, &d->decorationRect, &d->displayRect, false); d->viewItemLayout(vopt, &d->checkRect, &d->decorationRect, &d->displayRect, false);
if (d->cachedOption) { if (d->cachedOption) {
delete d->cachedOption; delete d->cachedOption;
d->cachedOption = 0; d->cachedOption = 0;
} }
d->cachedOption = new QStyleOptionViewItemV4(*vopt); d->cachedOption = new QStyleOptionViewItem(*vopt);
} }
if (sr == SE_ItemViewItemCheckIndicator) if (sr == SE_ItemViewItemCheckIndicator)
r = d->checkRect; r = d->checkRect;
@ -4480,7 +4480,7 @@ QSize QCommonStyle::sizeFromContents(ContentsType ct, const QStyleOption *opt,
#endif // QT_NO_GROUPBOX #endif // QT_NO_GROUPBOX
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
case CT_ItemViewItem: case CT_ItemViewItem:
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
QRect decorationRect, displayRect, checkRect; QRect decorationRect, displayRect, checkRect;
d->viewItemLayout(vopt, &checkRect, &decorationRect, &displayRect, true); d->viewItemLayout(vopt, &checkRect, &decorationRect, &displayRect, true);
sz = (decorationRect|displayRect|checkRect).size(); sz = (decorationRect|displayRect|checkRect).size();

View file

@ -58,14 +58,14 @@ public:
{ {
delete cachedOption; delete cachedOption;
} }
void viewItemDrawText(QPainter *p, const QStyleOptionViewItemV4 *option, const QRect &rect) const; void viewItemDrawText(QPainter *p, const QStyleOptionViewItem *option, const QRect &rect) const;
void viewItemLayout(const QStyleOptionViewItemV4 *opt, QRect *checkRect, void viewItemLayout(const QStyleOptionViewItem *opt, QRect *checkRect,
QRect *pixmapRect, QRect *textRect, bool sizehint) const; QRect *pixmapRect, QRect *textRect, bool sizehint) const;
QSize viewItemSize(const QStyleOptionViewItemV4 *option, int role) const; QSize viewItemSize(const QStyleOptionViewItem *option, int role) const;
mutable QRect decorationRect, displayRect, checkRect; mutable QRect decorationRect, displayRect, checkRect;
mutable QStyleOptionViewItemV4 *cachedOption; mutable QStyleOptionViewItem *cachedOption;
bool isViewItemCached(const QStyleOptionViewItemV4 &option) const { bool isViewItemCached(const QStyleOptionViewItem &option) const {
return cachedOption && (option.rect == cachedOption->rect return cachedOption && (option.rect == cachedOption->rect
&& option.direction == cachedOption->direction && option.direction == cachedOption->direction
&& option.state == cachedOption->state && option.state == cachedOption->state

View file

@ -2859,27 +2859,6 @@ QStyleOptionTitleBar::QStyleOptionTitleBar(int version)
Programming} Programming}
*/ */
/*!
\typedef QStyleOptionViewItemV2
\relates QStyleOptionViewItem
Synonym for QStyleOptionViewItem.
*/
/*!
\typedef QStyleOptionViewItemV3
\relates QStyleOptionViewItem
Synonym for QStyleOptionViewItem.
*/
/*!
\typedef QStyleOptionViewItemV4
\relates QStyleOptionViewItem
Synonym for QStyleOptionViewItem.
*/
/*! /*!
\enum QStyleOptionViewItem::Position \enum QStyleOptionViewItem::Position

View file

@ -397,10 +397,6 @@ protected:
}; };
Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionViewItem::ViewItemFeatures) Q_DECLARE_OPERATORS_FOR_FLAGS(QStyleOptionViewItem::ViewItemFeatures)
typedef QStyleOptionViewItem QStyleOptionViewItemV2;
typedef QStyleOptionViewItem QStyleOptionViewItemV3;
typedef QStyleOptionViewItem QStyleOptionViewItemV4;
#endif // QT_NO_ITEMVIEWS #endif // QT_NO_ITEMVIEWS
class Q_GUI_EXPORT QStyleOptionToolBox : public QStyleOption class Q_GUI_EXPORT QStyleOptionToolBox : public QStyleOption

View file

@ -1939,16 +1939,16 @@ QRenderRule QStyleSheetStyle::renderRule(const QWidget *w, const QStyleOption *o
} }
#endif // QT_NO_DOCKWIDGET #endif // QT_NO_DOCKWIDGET
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
else if (const QStyleOptionViewItemV2 *v2 = qstyleoption_cast<const QStyleOptionViewItemV2 *>(opt)) { else if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
if (v2->features & QStyleOptionViewItemV2::Alternate) if (vopt->features & QStyleOptionViewItem::Alternate)
extraClass |= PseudoClass_Alternate; extraClass |= PseudoClass_Alternate;
if (v2->viewItemPosition == QStyleOptionViewItemV4::OnlyOne) if (vopt->viewItemPosition == QStyleOptionViewItem::OnlyOne)
extraClass |= PseudoClass_OnlyOne; extraClass |= PseudoClass_OnlyOne;
else if (v2->viewItemPosition == QStyleOptionViewItemV4::Beginning) else if (vopt->viewItemPosition == QStyleOptionViewItem::Beginning)
extraClass |= PseudoClass_First; extraClass |= PseudoClass_First;
else if (v2->viewItemPosition == QStyleOptionViewItemV4::End) else if (vopt->viewItemPosition == QStyleOptionViewItem::End)
extraClass |= PseudoClass_Last; extraClass |= PseudoClass_Last;
else if (v2->viewItemPosition == QStyleOptionViewItemV4::Middle) else if (vopt->viewItemPosition == QStyleOptionViewItem::Middle)
extraClass |= PseudoClass_Middle; extraClass |= PseudoClass_Middle;
} }
#endif #endif
@ -3869,15 +3869,15 @@ void QStyleSheetStyle::drawControl(ControlElement ce, const QStyleOption *opt, Q
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
case CE_ItemViewItem: case CE_ItemViewItem:
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
QRenderRule subRule = renderRule(w, opt, PseudoElement_ViewItem); QRenderRule subRule = renderRule(w, opt, PseudoElement_ViewItem);
if (subRule.hasDrawable() || hasStyleRule(w, PseudoElement_Indicator)) { if (subRule.hasDrawable() || hasStyleRule(w, PseudoElement_Indicator)) {
QStyleOptionViewItemV4 optCopy(*vopt); QStyleOptionViewItem optCopy(*vopt);
subRule.configurePalette(&optCopy.palette, vopt->state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Text, subRule.configurePalette(&optCopy.palette, vopt->state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Text,
vopt->state & QStyle::State_Selected ? QPalette::Highlight : QPalette::Base); vopt->state & QStyle::State_Selected ? QPalette::Highlight : QPalette::Base);
QWindowsStyle::drawControl(ce, &optCopy, p, w); QWindowsStyle::drawControl(ce, &optCopy, p, w);
} else { } else {
QStyleOptionViewItemV4 voptCopy(*vopt); QStyleOptionViewItem voptCopy(*vopt);
subRule.configurePalette(&voptCopy.palette, QPalette::Text, QPalette::NoRole); subRule.configurePalette(&voptCopy.palette, QPalette::Text, QPalette::NoRole);
baseStyle()->drawControl(ce, &voptCopy, p, w); baseStyle()->drawControl(ce, &voptCopy, p, w);
} }
@ -4248,16 +4248,16 @@ void QStyleSheetStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *op
} }
case PE_IndicatorBranch: { case PE_IndicatorBranch: {
if (const QStyleOptionViewItemV2 *v2 = qstyleoption_cast<const QStyleOptionViewItemV2 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
QRenderRule subRule = renderRule(w, opt, PseudoElement_TreeViewBranch); QRenderRule subRule = renderRule(w, opt, PseudoElement_TreeViewBranch);
if (subRule.hasDrawable()) { if (subRule.hasDrawable()) {
if ((v2->state & QStyle::State_Selected) && v2->showDecorationSelected) if ((vopt->state & QStyle::State_Selected) && vopt->showDecorationSelected)
p->fillRect(v2->rect, v2->palette.highlight()); p->fillRect(vopt->rect, vopt->palette.highlight());
else if (v2->features & QStyleOptionViewItemV2::Alternate) else if (vopt->features & QStyleOptionViewItem::Alternate)
p->fillRect(v2->rect, v2->palette.alternateBase()); p->fillRect(vopt->rect, vopt->palette.alternateBase());
subRule.drawRule(p, opt->rect); subRule.drawRule(p, opt->rect);
} else { } else {
baseStyle()->drawPrimitive(pe, v2, p, w); baseStyle()->drawPrimitive(pe, vopt, p, w);
} }
} }
return; return;
@ -5509,27 +5509,27 @@ QRect QStyleSheetStyle::subElementRect(SubElement se, const QStyleOption *opt, c
#ifndef QT_NO_ITEMVIEWS #ifndef QT_NO_ITEMVIEWS
case SE_ItemViewItemCheckIndicator: case SE_ItemViewItemCheckIndicator:
if (!qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (!qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
return subElementRect(SE_CheckBoxIndicator, opt, w); return subElementRect(SE_CheckBoxIndicator, opt, w);
} }
// intentionally falls through // intentionally falls through
case SE_ItemViewItemText: case SE_ItemViewItemText:
case SE_ItemViewItemDecoration: case SE_ItemViewItemDecoration:
case SE_ItemViewItemFocusRect: case SE_ItemViewItemFocusRect:
if (const QStyleOptionViewItemV4 *vopt = qstyleoption_cast<const QStyleOptionViewItemV4 *>(opt)) { if (const QStyleOptionViewItem *vopt = qstyleoption_cast<const QStyleOptionViewItem *>(opt)) {
QRenderRule subRule = renderRule(w, opt, PseudoElement_ViewItem); QRenderRule subRule = renderRule(w, opt, PseudoElement_ViewItem);
PseudoElement pe = PseudoElement_None; PseudoElement pe = PseudoElement_None;
if (se == SE_ItemViewItemText || se == SE_ItemViewItemFocusRect) if (se == SE_ItemViewItemText || se == SE_ItemViewItemFocusRect)
pe = PseudoElement_ViewItemText; pe = PseudoElement_ViewItemText;
else if (se == SE_ItemViewItemDecoration && vopt->features & QStyleOptionViewItemV2::HasDecoration) else if (se == SE_ItemViewItemDecoration && vopt->features & QStyleOptionViewItem::HasDecoration)
pe = PseudoElement_ViewItemIcon; pe = PseudoElement_ViewItemIcon;
else if (se == SE_ItemViewItemCheckIndicator && vopt->features & QStyleOptionViewItemV2::HasCheckIndicator) else if (se == SE_ItemViewItemCheckIndicator && vopt->features & QStyleOptionViewItem::HasCheckIndicator)
pe = PseudoElement_ViewItemIndicator; pe = PseudoElement_ViewItemIndicator;
else else
break; break;
if (subRule.hasGeometry() || subRule.hasBox() || !subRule.hasNativeBorder() || hasStyleRule(w, pe)) { if (subRule.hasGeometry() || subRule.hasBox() || !subRule.hasNativeBorder() || hasStyleRule(w, pe)) {
QRenderRule subRule2 = renderRule(w, opt, pe); QRenderRule subRule2 = renderRule(w, opt, pe);
QStyleOptionViewItemV4 optCopy(*vopt); QStyleOptionViewItem optCopy(*vopt);
optCopy.rect = subRule.contentsRect(vopt->rect); optCopy.rect = subRule.contentsRect(vopt->rect);
QRect rect = ParentStyle::subElementRect(se, &optCopy, w); QRect rect = ParentStyle::subElementRect(se, &optCopy, w);
return positionRect(w, subRule2, pe, rect, opt->direction); return positionRect(w, subRule2, pe, rect, opt->direction);

View file

@ -1452,7 +1452,7 @@ public:
private: private:
QCalendarWidgetPrivate *calendarWidgetPrivate; QCalendarWidgetPrivate *calendarWidgetPrivate;
mutable QStyleOptionViewItemV4 storedOption; mutable QStyleOptionViewItem storedOption;
}; };
//Private tool button class //Private tool button class

View file

@ -1884,8 +1884,7 @@ void tst_QListView::styleOptionViewItem()
public: public:
void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{ {
QVERIFY(qstyleoption_cast<const QStyleOptionViewItemV4 *>(&option)); QStyleOptionViewItem opt(option);
QStyleOptionViewItemV4 opt(option);
initStyleOption(&opt, index); initStyleOption(&opt, index);
QCOMPARE(opt.index, index); QCOMPARE(opt.index, index);

View file

@ -1202,9 +1202,9 @@ void tst_QStyleSheetStyle::proxyStyle()
QTest::qWait(100); QTest::qWait(100);
// Test for QTBUG-7198 - style sheet overrides custom element size // Test for QTBUG-7198 - style sheet overrides custom element size
QStyleOptionViewItemV4 opt; QStyleOptionViewItem opt;
opt.initFrom(w); opt.initFrom(w);
opt.features |= QStyleOptionViewItemV2::HasCheckIndicator; opt.features |= QStyleOptionViewItem::HasCheckIndicator;
QVERIFY(pb5->style()->subElementRect(QStyle::SE_ItemViewItemCheckIndicator, QVERIFY(pb5->style()->subElementRect(QStyle::SE_ItemViewItemCheckIndicator,
&opt, pb5).width() == 3); &opt, pb5).width() == 3);
delete w; delete w;