diff options
author | Jan-Arve Sæther <jan-arve.saether@nokia.com> | 2010-05-03 08:11:20 (GMT) |
---|---|---|
committer | Jan-Arve Sæther <jan-arve.saether@nokia.com> | 2010-05-03 08:11:58 (GMT) |
commit | 68de350953841e5789656831b08099a6d136c397 (patch) | |
tree | b18723ffa2153410db7c1b51b377f7cc88d952d2 /src/gui/kernel | |
parent | e970b88cab8f071f3dbaac5f0d520d7196241ab7 (diff) | |
download | Qt-68de350953841e5789656831b08099a6d136c397.zip Qt-68de350953841e5789656831b08099a6d136c397.tar.gz Qt-68de350953841e5789656831b08099a6d136c397.tar.bz2 |
Revert "Revert "Revert "Implement heightForWidth support for QTabWidget and QStackedLayout."""
This reverts commit 1f00130097f81bc78aebb3c055f38c066221bc98.
(Sorry about this. The previous commit got pushed by accident. The proper
fix has been done for 4.8 instead.)
Diffstat (limited to 'src/gui/kernel')
-rw-r--r-- | src/gui/kernel/qlayoutitem.cpp | 4 | ||||
-rw-r--r-- | src/gui/kernel/qstackedlayout.cpp | 26 | ||||
-rw-r--r-- | src/gui/kernel/qstackedlayout.h | 2 | ||||
-rw-r--r-- | src/gui/kernel/qwidget.cpp | 17 | ||||
-rw-r--r-- | src/gui/kernel/qwidget.h | 1 | ||||
-rw-r--r-- | src/gui/kernel/qwidget_p.h | 1 |
6 files changed, 3 insertions, 48 deletions
diff --git a/src/gui/kernel/qlayoutitem.cpp b/src/gui/kernel/qlayoutitem.cpp index e615b2d..6a91d95 100644 --- a/src/gui/kernel/qlayoutitem.cpp +++ b/src/gui/kernel/qlayoutitem.cpp @@ -516,7 +516,9 @@ bool QWidgetItem::hasHeightForWidth() const { if (isEmpty()) return false; - return wid->hasHeightForWidth(); + if (wid->layout()) + return wid->layout()->hasHeightForWidth(); + return wid->sizePolicy().hasHeightForWidth(); } /*! diff --git a/src/gui/kernel/qstackedlayout.cpp b/src/gui/kernel/qstackedlayout.cpp index 4b49638..7559066 100644 --- a/src/gui/kernel/qstackedlayout.cpp +++ b/src/gui/kernel/qstackedlayout.cpp @@ -475,32 +475,6 @@ void QStackedLayout::setGeometry(const QRect &rect) } } -bool QStackedLayout::hasHeightForWidth() const -{ - const int n = count(); - - for (int i = 0; i < n; ++i) { - if (QLayoutItem *item = itemAt(i)) { - if (item->hasHeightForWidth()) - return true; - } - } - return false; -} - -int QStackedLayout::heightForWidth(int width) const -{ - const int n = count(); - - int hfw = 0; - for (int i = 0; i < n; ++i) { - if (QLayoutItem *item = itemAt(i)) { - hfw = qMax(hfw, item->heightForWidth(width)); - } - } - return hfw; -} - /*! \enum QStackedLayout::StackingMode \since 4.4 diff --git a/src/gui/kernel/qstackedlayout.h b/src/gui/kernel/qstackedlayout.h index 842b62b..c069149 100644 --- a/src/gui/kernel/qstackedlayout.h +++ b/src/gui/kernel/qstackedlayout.h @@ -95,8 +95,6 @@ public: QLayoutItem *itemAt(int) const; QLayoutItem *takeAt(int); void setGeometry(const QRect &rect); - bool hasHeightForWidth() const; - int heightForWidth(int width) const; Q_SIGNALS: void widgetRemoved(int index); diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index 399a27b..20d1d30 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -3825,11 +3825,6 @@ void QWidget::setMaximumSize(int maxw, int maxh) d->updateGeometry_helper(d->extra->minw == d->extra->maxw && d->extra->minh == d->extra->maxh); } -bool QWidgetPrivate::hasHeightForWidth() const -{ - return layout ? layout->hasHeightForWidth() : size_policy.hasHeightForWidth(); -} - /*! \overload @@ -7975,18 +7970,6 @@ QSize QWidget::minimumSizeHint() const return QSize(-1, -1); } -/*! - \internal - This is a bit hackish, but ideally this would have been a virtual - function so that subclasses could reimplement their own function. - Instead we add a virtual function to QWidgetPrivate. -*/ -bool QWidget::hasHeightForWidth() const -{ - Q_D(const QWidget); - return d->hasHeightForWidth(); -} - /*! \fn QWidget *QWidget::parentWidget() const diff --git a/src/gui/kernel/qwidget.h b/src/gui/kernel/qwidget.h index 6e5de7d..e12148b 100644 --- a/src/gui/kernel/qwidget.h +++ b/src/gui/kernel/qwidget.h @@ -524,7 +524,6 @@ public: virtual QSize sizeHint() const; virtual QSize minimumSizeHint() const; - bool hasHeightForWidth() const; QSizePolicy sizePolicy() const; void setSizePolicy(QSizePolicy); diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h index 9926b2c..cad60b5 100644 --- a/src/gui/kernel/qwidget_p.h +++ b/src/gui/kernel/qwidget_p.h @@ -493,7 +493,6 @@ public: bool setMinimumSize_helper(int &minw, int &minh); bool setMaximumSize_helper(int &maxw, int &maxh); - virtual bool hasHeightForWidth() const; void setConstraints_sys(); QWidget *childAt_helper(const QPoint &, bool) const; void updateGeometry_helper(bool forceUpdate); |