From 8c2b9783397236d645ee38623be5209010cc4797 Mon Sep 17 00:00:00 2001 From: Marius Bugge Monsen Date: Tue, 11 Aug 2009 09:46:22 +0200 Subject: Move some of the QGraphicsTreeViewItem size hint code. This removes one virtual function. --- src/qgraphicstreeview.cpp | 19 +++++-------------- src/qgraphicstreeview.h | 3 +-- 2 files changed, 6 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/qgraphicstreeview.cpp b/src/qgraphicstreeview.cpp index e5e421a..11ba520 100644 --- a/src/qgraphicstreeview.cpp +++ b/src/qgraphicstreeview.cpp @@ -89,23 +89,14 @@ QSizeF QtGraphicsTreeViewItem::sizeHint(Qt::SizeHint which, const QSizeF &constr { Q_D(const QtGraphicsTreeViewItem); d->view->initStyleOption(&d->option); - return sizeHint(d->it, &d->option, which, constraint); -} - -/*! - */ -QSizeF QtGraphicsTreeViewItem::sizeHint(const QtTreeModelIterator &it, const QStyleOptionViewItemV4 *option, - Qt::SizeHint which, const QSizeF &constraint) const -{ - Q_D(const QtGraphicsTreeViewItem); switch (which) { case Qt::MinimumSize: case Qt::PreferredSize: { qreal width = 0; qreal height = 0; - for (int column = 0; column < it.columnCount(); ++column) { + for (int column = 0; column < d->it.columnCount(); ++column) { initStyleOption(&d->option, column); - const QSizeF size = sizeHint(it, column, option, which, constraint); + const QSizeF size = sizeHint(column, &d->option, which, constraint); width += size.width(); height = qMax(height, size.height()); } @@ -121,7 +112,7 @@ QSizeF QtGraphicsTreeViewItem::sizeHint(const QtTreeModelIterator &it, const QSt /*! */ -QSizeF QtGraphicsTreeViewItem::sizeHint(const QtTreeModelIterator &it, int column, const QStyleOptionViewItemV4 *option, +QSizeF QtGraphicsTreeViewItem::sizeHint(int column, const QStyleOptionViewItemV4 *option, Qt::SizeHint which, const QSizeF &constraint) const { Q_D(const QtGraphicsTreeViewItem); @@ -130,7 +121,7 @@ QSizeF QtGraphicsTreeViewItem::sizeHint(const QtTreeModelIterator &it, int colum case Qt::MinimumSize: case Qt::PreferredSize: case Qt::MaximumSize: { - const QVariant value = view()->d_func()->cachedData(it, column, Qt::SizeHintRole); + const QVariant value = view()->d_func()->cachedData(d->it, column, Qt::SizeHintRole); if (value.isValid()) return qvariant_cast(value); else @@ -163,7 +154,7 @@ void QtGraphicsTreeViewItem::paint(QPainter *painter, const QStyleOptionGraphics const int column = mapping.value(section, section); copyStyleOptionState(option, &d->option); initStyleOption(&d->option, column); - QSizeF size = sizeHint(d->it, column, &d->option, Qt::PreferredSize); + QSizeF size = sizeHint(column, &d->option, Qt::PreferredSize, QSizeF()); size.setWidth(d->header ? d->header->sectionSize(section) : d->view->geometry().width()); if (column == 0) { qreal indent = depth * QtGraphicsTreeViewPrivate::indentation(); diff --git a/src/qgraphicstreeview.h b/src/qgraphicstreeview.h index dd52e01..5fbd719 100644 --- a/src/qgraphicstreeview.h +++ b/src/qgraphicstreeview.h @@ -61,8 +61,7 @@ public: void setIterator(const QtTreeModelIterator &it); virtual QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; - virtual QSizeF sizeHint(const QtTreeModelIterator &it, const QStyleOptionViewItemV4 *option, Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; - virtual QSizeF sizeHint(const QtTreeModelIterator &it, int column, const QStyleOptionViewItemV4 *option, Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + virtual QSizeF sizeHint(int column, const QStyleOptionViewItemV4 *option, Qt::SizeHint which, const QSizeF &constraint) const; virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0); virtual void paintBranches(QPainter *painter, QStyleOptionViewItemV4 *option, const QStack &stack); -- cgit v1.2.3