754 QApplication::setActiveWindow(testFocusWidget); |
756 QApplication::setActiveWindow(testFocusWidget); |
755 QTest::qWaitForWindowShown(testFocusWidget); |
757 QTest::qWaitForWindowShown(testFocusWidget); |
756 box->activateWindow(); |
758 box->activateWindow(); |
757 box->setFocus(); |
759 box->setFocus(); |
758 |
760 |
759 QTRY_COMPARE(qApp->focusWidget(), box); |
761 QTRY_COMPARE(qApp->focusWidget(), (QWidget *)box); |
760 |
762 |
761 QSignalSpy editingFinishedSpy1(box, SIGNAL(editingFinished())); |
763 QSignalSpy editingFinishedSpy1(box, SIGNAL(editingFinished())); |
762 QSignalSpy editingFinishedSpy2(box2, SIGNAL(editingFinished())); |
764 QSignalSpy editingFinishedSpy2(box2, SIGNAL(editingFinished())); |
763 |
765 |
764 box->setFocus(); |
766 box->setFocus(); |
1002 QTRY_VERIFY(spinBox->sizeHintRequests > 0); |
1004 QTRY_VERIFY(spinBox->sizeHintRequests > 0); |
1003 |
1005 |
1004 delete widget; |
1006 delete widget; |
1005 } |
1007 } |
1006 |
1008 |
|
1009 void tst_QSpinBox::taskQTBUG_5008_textFromValueAndValidate() |
|
1010 { |
|
1011 class DecoratedSpinBox : public QSpinBox |
|
1012 { |
|
1013 public: |
|
1014 DecoratedSpinBox() |
|
1015 { |
|
1016 setLocale(QLocale::French); |
|
1017 setMaximum(100000000); |
|
1018 setValue(1000000); |
|
1019 } |
|
1020 |
|
1021 QLineEdit *lineEdit() const |
|
1022 { |
|
1023 return QSpinBox::lineEdit(); |
|
1024 } |
|
1025 |
|
1026 //we use the French delimiters here |
|
1027 QString textFromValue (int value) const |
|
1028 { |
|
1029 return locale().toString(value); |
|
1030 } |
|
1031 |
|
1032 } spinbox; |
|
1033 spinbox.show(); |
|
1034 spinbox.activateWindow(); |
|
1035 spinbox.setFocus(); |
|
1036 QApplication::setActiveWindow(&spinbox); |
|
1037 QTest::qWaitForWindowShown(&spinbox); |
|
1038 QTRY_VERIFY(spinbox.hasFocus()); |
|
1039 QTRY_COMPARE(static_cast<QWidget *>(&spinbox), QApplication::activeWindow()); |
|
1040 QCOMPARE(spinbox.text(), spinbox.locale().toString(spinbox.value())); |
|
1041 spinbox.lineEdit()->setCursorPosition(2); //just after the first thousand separator |
|
1042 QTest::keyClick(0, Qt::Key_0); // let's insert a 0 |
|
1043 QCOMPARE(spinbox.value(), 10000000); //it's been multiplied by 10 |
|
1044 spinbox.clearFocus(); //make sure the value is correctly formatted |
|
1045 QCOMPARE(spinbox.text(), spinbox.locale().toString(spinbox.value())); |
|
1046 } |
|
1047 |
|
1048 |
1007 QTEST_MAIN(tst_QSpinBox) |
1049 QTEST_MAIN(tst_QSpinBox) |
1008 #include "tst_qspinbox.moc" |
1050 #include "tst_qspinbox.moc" |