equal
deleted
inserted
replaced
100 |
100 |
101 // task-specific tests below me: |
101 // task-specific tests below me: |
102 void task187373_addAbstractScrollAreas(); |
102 void task187373_addAbstractScrollAreas(); |
103 void task187373_addAbstractScrollAreas_data(); |
103 void task187373_addAbstractScrollAreas_data(); |
104 void task169702_sizes(); |
104 void task169702_sizes(); |
|
105 void taskQTBUG_4101_ensureOneNonCollapsedWidget_data(); |
|
106 void taskQTBUG_4101_ensureOneNonCollapsedWidget(); |
105 |
107 |
106 private: |
108 private: |
107 void removeThirdWidget(); |
109 void removeThirdWidget(); |
108 void addThirdWidget(); |
110 void addThirdWidget(); |
109 QSplitter *splitter; |
111 QSplitter *splitter; |
1279 class MyFriendlySplitter : public QSplitter |
1281 class MyFriendlySplitter : public QSplitter |
1280 { |
1282 { |
1281 public: |
1283 public: |
1282 MyFriendlySplitter(QWidget *parent = 0) : QSplitter(parent) {} |
1284 MyFriendlySplitter(QWidget *parent = 0) : QSplitter(parent) {} |
1283 void setRubberBand(int pos) { QSplitter::setRubberBand(pos); } |
1285 void setRubberBand(int pos) { QSplitter::setRubberBand(pos); } |
|
1286 |
|
1287 friend class tst_QSplitter; |
1284 }; |
1288 }; |
1285 |
1289 |
1286 void tst_QSplitter::rubberBandNotInSplitter() |
1290 void tst_QSplitter::rubberBandNotInSplitter() |
1287 { |
1291 { |
1288 MyFriendlySplitter split; |
1292 MyFriendlySplitter split; |
1401 |
1405 |
1402 //Make sure the minimimSizeHint is respected |
1406 //Make sure the minimimSizeHint is respected |
1403 QCOMPARE(testW->size().height(), testW->minimumSizeHint().height()); |
1407 QCOMPARE(testW->size().height(), testW->minimumSizeHint().height()); |
1404 } |
1408 } |
1405 |
1409 |
|
1410 void tst_QSplitter::taskQTBUG_4101_ensureOneNonCollapsedWidget_data() |
|
1411 { |
|
1412 QTest::addColumn<bool>("testingHide"); |
|
1413 |
|
1414 QTest::newRow("last non collapsed hidden") << true; |
|
1415 QTest::newRow("last non collapsed deleted") << false; |
|
1416 } |
|
1417 |
|
1418 void tst_QSplitter::taskQTBUG_4101_ensureOneNonCollapsedWidget() |
|
1419 { |
|
1420 QFETCH(bool, testingHide); |
|
1421 |
|
1422 MyFriendlySplitter s; |
|
1423 QLabel *l; |
|
1424 for (int i = 0; i < 5; ++i) { |
|
1425 l = new QLabel(QString("Label ") + QChar('A' + i)); |
|
1426 l->setAlignment(Qt::AlignCenter); |
|
1427 s.addWidget(l); |
|
1428 s.moveSplitter(0, i); // Collapse all the labels except the last one. |
|
1429 } |
|
1430 |
|
1431 s.show(); |
|
1432 if (testingHide) |
|
1433 l->hide(); |
|
1434 else |
|
1435 delete l; |
|
1436 QTest::qWait(100); |
|
1437 QVERIFY(s.sizes().at(0) > 0); |
|
1438 } |
|
1439 |
1406 QTEST_MAIN(tst_QSplitter) |
1440 QTEST_MAIN(tst_QSplitter) |
1407 #include "tst_qsplitter.moc" |
1441 #include "tst_qsplitter.moc" |