diff options
author | Thiago Macieira <thiago.macieira@nokia.com> | 2009-08-27 15:17:12 (GMT) |
---|---|---|
committer | Thiago Macieira <thiago.macieira@nokia.com> | 2009-08-27 15:17:12 (GMT) |
commit | 8c755acd7549a1de53acb9d93e9a44e333be2b5b (patch) | |
tree | 7a1e1f5af9b7796ec0719bf0b5e3baf81b393bab /tests/auto/qcombobox | |
parent | d0cdddb61c46a5d27fe0e4fae176964c2009e971 (diff) | |
parent | ebf69d862ad816bf9b00e27adc2b6f0d74331338 (diff) | |
download | Qt-8c755acd7549a1de53acb9d93e9a44e333be2b5b.zip Qt-8c755acd7549a1de53acb9d93e9a44e333be2b5b.tar.gz Qt-8c755acd7549a1de53acb9d93e9a44e333be2b5b.tar.bz2 |
Merge branch '4.5' into 4.6
Conflicts:
tests/auto/linguist/lupdate/testdata/good/backslashes/project.ts.result
tests/auto/linguist/lupdate/testdata/good/lacksqobject/expectedoutput.txt
tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/finddialog.cpp
tests/auto/linguist/lupdate/testdata/good/mergecpp_noobsolete/project.ts.result
tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/finddialog.cpp
tests/auto/linguist/lupdate/testdata/good/mergecpp_obsolete/project.ts.result
tests/auto/linguist/lupdate/testdata/good/parsecpp/finddialog.cpp
tests/auto/qcombobox/tst_qcombobox.cpp
tests/auto/xmlpatternsview/view/FunctionSignaturesView.cpp
tests/auto/xmlpatternsview/view/MainWindow.cpp
tests/auto/xmlpatternsview/view/TestCaseView.cpp
tests/auto/xmlpatternsview/view/TestResultView.cpp
tests/auto/xmlpatternsview/view/TreeSortFilter.cpp
tests/auto/xmlpatternsview/view/UserTestCase.cpp
tests/auto/xmlpatternsview/view/XDTItemItem.cpp
tests/auto/xmlpatternsview/view/main.cpp
tests/auto/xmlpatternsxqts/lib/ASTItem.h
tests/auto/xmlpatternsxqts/lib/DebugExpressionFactory.h
tests/auto/xmlpatternsxqts/lib/ExpressionNamer.h
tests/auto/xmlpatternsxqts/lib/ExternalSourceLoader.h
tests/auto/xmlpatternsxqts/lib/Global.h
tests/auto/xmlpatternsxqts/lib/ResultThreader.h
tests/auto/xmlpatternsxqts/lib/TestBaseLine.h
tests/auto/xmlpatternsxqts/lib/TestCase.h
tests/auto/xmlpatternsxqts/lib/TestResult.h
tests/auto/xmlpatternsxqts/lib/TestResultHandler.h
tests/auto/xmlpatternsxqts/lib/TestSuiteHandler.h
tests/auto/xmlpatternsxqts/lib/Worker.h
tests/auto/xmlpatternsxqts/lib/XMLWriter.h
tests/auto/xmlpatternsxqts/lib/XQTSTestCase.h
Diffstat (limited to 'tests/auto/qcombobox')
-rw-r--r-- | tests/auto/qcombobox/tst_qcombobox.cpp | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/auto/qcombobox/tst_qcombobox.cpp b/tests/auto/qcombobox/tst_qcombobox.cpp index b568c60..dac32bb 100644 --- a/tests/auto/qcombobox/tst_qcombobox.cpp +++ b/tests/auto/qcombobox/tst_qcombobox.cpp @@ -145,6 +145,8 @@ private slots: void noScrollbar(); void setItemDelegate(); void task253944_itemDelegateIsReset(); + void subControlRectsWithOffset_data(); + void subControlRectsWithOffset(); protected slots: void onEditTextChanged( const QString &newString ); @@ -2289,5 +2291,53 @@ void tst_QComboBox::task253944_itemDelegateIsReset() } +void tst_QComboBox::subControlRectsWithOffset_data() +{ + QTest::addColumn<bool>("editable"); + + QTest::newRow("editable = true") << true; + QTest::newRow("editable = false") << false; +} + +void tst_QComboBox::subControlRectsWithOffset() +{ + // The sub control rect relative position should not depends + // on the position of the combobox + + class FriendlyCombo : public QComboBox { + public: + void styleOption(QStyleOptionComboBox *optCombo) { + initStyleOption(optCombo); + } + } combo; + QStyleOptionComboBox optCombo; + combo.styleOption(&optCombo); + + + const QRect rectAtOrigin(0, 0, 80, 30); + const QPoint offset(25, 50); + const QRect rectWithOffset = rectAtOrigin.translated(offset); + + QStyle *style = combo.style(); + + QFETCH(bool, editable); + optCombo.editable = editable; + + optCombo.rect = rectAtOrigin; + QRect editFieldRect = style->subControlRect(QStyle::CC_ComboBox, &optCombo, QStyle::SC_ComboBoxEditField, 0); + QRect arrowRect = style->subControlRect(QStyle::CC_ComboBox, &optCombo, QStyle::SC_ComboBoxArrow, 0); + QRect listboxRect = style->subControlRect(QStyle::CC_ComboBox, &optCombo, QStyle::SC_ComboBoxListBoxPopup, 0); + + optCombo.rect = rectWithOffset; + QRect editFieldRectWithOffset = style->subControlRect(QStyle::CC_ComboBox, &optCombo, QStyle::SC_ComboBoxEditField, 0); + QRect arrowRectWithOffset = style->subControlRect(QStyle::CC_ComboBox, &optCombo, QStyle::SC_ComboBoxArrow, 0); + QRect listboxRectWithOffset = style->subControlRect(QStyle::CC_ComboBox, &optCombo, QStyle::SC_ComboBoxListBoxPopup, 0); + + QCOMPARE(editFieldRect, editFieldRectWithOffset.translated(-offset)); + QCOMPARE(arrowRect, arrowRectWithOffset.translated(-offset)); + QCOMPARE(listboxRect, listboxRectWithOffset.translated(-offset)); + +} + QTEST_MAIN(tst_QComboBox) #include "tst_qcombobox.moc" |