From 43f8762367fa6ffc228ae6e97192766475b02ac0 Mon Sep 17 00:00:00 2001 From: Jan-Arve Saether Date: Wed, 19 Jan 2011 21:55:06 +0100 Subject: Enable the widthForHeight() test case. While I did that I also found a copy-paste (?) bug in the WFH case of QGridLayoutEngine::sizeHint() that caused the widthForHeight() case to fail. Task-number: QTBUG-14693 --- src/gui/graphicsview/qgridlayoutengine.cpp | 2 +- tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/gui/graphicsview/qgridlayoutengine.cpp b/src/gui/graphicsview/qgridlayoutengine.cpp index 75f1cf5..23cae94 100644 --- a/src/gui/graphicsview/qgridlayoutengine.cpp +++ b/src/gui/graphicsview/qgridlayoutengine.cpp @@ -1174,7 +1174,7 @@ QSizeF QGridLayoutEngine::sizeHint(const QLayoutStyleInfo &styleInfo, Qt::SizeHi //constraints to find the column widths q_rowData.calculateGeometries(0, rowCount(), height, sizehint_yy.data(), sizehint_heights.data(), 0, sizehint_totalBoxes[Ver], q_infos[Ver]); - ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, sizehint_yy.data(), sizehint_heights.data(), Qt::Vertical); + ensureColumnAndRowData(&q_columnData, &sizehint_totalBoxes[Hor], styleInfo, sizehint_yy.data(), sizehint_heights.data(), Qt::Horizontal); sizeHintCalculated = true; } } diff --git a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp index 0ec67f6..92cf7fe 100644 --- a/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp +++ b/tests/auto/qgraphicsgridlayout/tst_qgraphicsgridlayout.cpp @@ -3117,7 +3117,6 @@ void tst_QGraphicsGridLayout::heightForWidth() void tst_QGraphicsGridLayout::widthForHeight() { -#if 0 QGraphicsWidget *widget = new QGraphicsWidget; QGraphicsGridLayout *layout = new QGraphicsGridLayout; widget->setLayout(layout); @@ -3144,9 +3143,10 @@ void tst_QGraphicsGridLayout::widthForHeight() layout->addItem(w10, 1, 0); RectWidget *w11 = new RectWidget; - w11->setMinimumSize(1,1); - w11->setPreferredSize(50, 50); - w11->setMaximumSize(30000,30000); + w11->setSizeHint(Qt::MinimumSize, QSizeF(1,1)); + w11->setSizeHint(Qt::PreferredSize, QSizeF(50,50)); + w11->setSizeHint(Qt::MaximumSize, QSizeF(30000,30000)); + // This will make sure its always square. w11->setConstraintFunction(wfh); QSizePolicy sp(QSizePolicy::Preferred, QSizePolicy::Preferred); @@ -3190,7 +3190,6 @@ void tst_QGraphicsGridLayout::widthForHeight() QCOMPARE(layout->effectiveSizeHint(Qt::MinimumSize, QSizeF(-1, 300)), QSizeF(1 + 200, 300)); QCOMPARE(layout->effectiveSizeHint(Qt::PreferredSize, QSizeF(-1, 300)), QSizeF(50 + 200, 300)); QCOMPARE(layout->effectiveSizeHint(Qt::MaximumSize, QSizeF(-1, 300)), QSizeF(100 + 200, 300)); -#endif } void tst_QGraphicsGridLayout::heightForWidthWithSpanning() -- cgit v0.12