diff options
author | Alan Alpert <alan.alpert@nokia.com> | 2009-11-05 08:27:18 (GMT) |
---|---|---|
committer | Alan Alpert <alan.alpert@nokia.com> | 2009-11-05 08:27:18 (GMT) |
commit | 9bb160d8cee882bec25d7654a4d0554a755265c5 (patch) | |
tree | be32390da9112002db36803ed4a8fc74a00c781a | |
parent | f8423b94bbf439831577644cd07d2aa4e997396a (diff) | |
download | Qt-9bb160d8cee882bec25d7654a4d0554a755265c5.zip Qt-9bb160d8cee882bec25d7654a4d0554a755265c5.tar.gz Qt-9bb160d8cee882bec25d7654a4d0554a755265c5.tar.bz2 |
Get tests passing on Mac
There was inconsistent rounding of text widths.
Task-number: QT-4200 QT-4201
4 files changed, 21 insertions, 17 deletions
diff --git a/src/declarative/graphicsitems/qmlgraphicsparticles.cpp b/src/declarative/graphicsitems/qmlgraphicsparticles.cpp index 92943e8..4ac02b4 100644 --- a/src/declarative/graphicsitems/qmlgraphicsparticles.cpp +++ b/src/declarative/graphicsitems/qmlgraphicsparticles.cpp @@ -302,7 +302,7 @@ void QmlGraphicsParticleMotionWander::advance(QmlGraphicsParticle &p, int interv qreal xdiff = p.x_velocity - d->x_targetV; if ((xdiff > d->x_peak && d->x_var > 0.0) || (xdiff < -d->x_peak && d->x_var < 0.0)) { d->x_var = -d->x_var; - d->x_peak = _xvariance + _xvariance * qreal(rand()) / RAND_MAX; + d->x_peak = _xvariance + _xvariance * qreal(qrand()) / RAND_MAX; } p.x_velocity += d->x_var * interval; } @@ -312,7 +312,7 @@ void QmlGraphicsParticleMotionWander::advance(QmlGraphicsParticle &p, int interv qreal ydiff = p.y_velocity - d->y_targetV; if ((ydiff > d->y_peak && d->y_var > 0.0) || (ydiff < -d->y_peak && d->y_var < 0.0)) { d->y_var = -d->y_var; - d->y_peak = _yvariance + _yvariance * qreal(rand()) / RAND_MAX; + d->y_peak = _yvariance + _yvariance * qreal(qrand()) / RAND_MAX; } p.y_velocity += d->y_var * interval; } @@ -329,8 +329,8 @@ void QmlGraphicsParticleMotionWander::created(QmlGraphicsParticle &p) d->y_targetV = p.y_velocity; d->x_peak = _xvariance; d->y_peak = _yvariance; - d->x_var = _pace * qreal(rand()) / RAND_MAX / 1000.0; - d->y_var = _pace * qreal(rand()) / RAND_MAX / 1000.0; + d->x_var = _pace * qreal(qrand()) / RAND_MAX / 1000.0; + d->y_var = _pace * qreal(qrand()) / RAND_MAX / 1000.0; } } @@ -456,7 +456,7 @@ void QmlGraphicsParticlesPrivate::tick(int time) if (emissionRate != -1){ qreal variance = 1.; if (emissionVariance > 0.){ - variance += (qreal(rand())/RAND_MAX) * emissionVariance * (rand()%2?-1.:1.); + variance += (qreal(qrand())/RAND_MAX) * emissionVariance * (qrand()%2?-1.:1.); } qreal emission = emissionRate * (qreal(interval)/1000.); emission = emission * variance + emissionCarry; @@ -478,7 +478,7 @@ void QmlGraphicsParticlesPrivate::tick(int time) }else{ qreal variance = 1.; if (emissionVariance > 0.){ - variance += (qreal(rand())/RAND_MAX) * emissionVariance * (rand()%2?-1.:1.); + variance += (qreal(qrand())/RAND_MAX) * emissionVariance * (qrand()%2?-1.:1.); } qreal workingEmission = bursts[i].second * (qreal(interval)/1000.); workingEmission *= variance; @@ -510,11 +510,11 @@ void QmlGraphicsParticlesPrivate::createParticle(int time) #endif Q_Q(QmlGraphicsParticles); QmlGraphicsParticle p(time); - p.x = q->x() + q->width() * qreal(rand()) / RAND_MAX - image.width()/2.0; - p.y = q->y() + q->height() * qreal(rand()) / RAND_MAX - image.height()/2.0; + p.x = q->x() + q->width() * qreal(qrand()) / RAND_MAX - image.width()/2.0; + p.y = q->y() + q->height() * qreal(qrand()) / RAND_MAX - image.height()/2.0; p.lifeSpan = lifeSpan; if (lifeSpanDev) - p.lifeSpan += int(lifeSpanDev/2 - lifeSpanDev * qreal(rand()) / RAND_MAX); + p.lifeSpan += int(lifeSpanDev/2 - lifeSpanDev * qreal(qrand()) / RAND_MAX); p.fadeOutAge = p.lifeSpan - fadeOutDur; if (fadeInDur == 0.) { p.state= QmlGraphicsParticle::Solid; @@ -522,12 +522,12 @@ void QmlGraphicsParticlesPrivate::createParticle(int time) } qreal a = angle; if (angleDev) - a += angleDev/2 - angleDev * qreal(rand()) / RAND_MAX; + a += angleDev/2 - angleDev * qreal(qrand()) / RAND_MAX; if (a > M_PI) a = a - 2 * M_PI; qreal v = velocity; if (velocityDev) - v += velocityDev/2 - velocityDev * qreal(rand()) / RAND_MAX; + v += velocityDev/2 - velocityDev * qreal(qrand()) / RAND_MAX; p.x_velocity = v * fastCos(a); p.y_velocity = v * fastSin(a); particles.append(p); diff --git a/tests/auto/declarative/qfxtextedit/tst_qfxtextedit.cpp b/tests/auto/declarative/qfxtextedit/tst_qfxtextedit.cpp index 7bc6121..19d5998 100644 --- a/tests/auto/declarative/qfxtextedit/tst_qfxtextedit.cpp +++ b/tests/auto/declarative/qfxtextedit/tst_qfxtextedit.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include <qtest.h> #include "../../../shared/util.h" +#include <math.h> #include <QFile> #include <QTextDocument> #include <QtDeclarative/qmlengine.h> @@ -183,8 +184,9 @@ void tst_qfxtextedit::width() for (int i = 0; i < standard.size(); i++) { QFont f; - QFontMetrics fm(f); - int metricWidth = fm.size(Qt::TextExpandTabs && Qt::TextShowMnemonic, standard.at(i)).width(); + QFontMetricsF fm(f); + qreal metricWidth = fm.size(Qt::TextExpandTabs && Qt::TextShowMnemonic, standard.at(i)).width(); + metricWidth = floor(metricWidth); QString componentStr = "import Qt 4.6\nTextEdit { text: \"" + standard.at(i) + "\" }"; QmlComponent texteditComponent(&engine, componentStr.toLatin1(), QUrl()); diff --git a/tests/auto/declarative/qfxtextinput/tst_qfxtextinput.cpp b/tests/auto/declarative/qfxtextinput/tst_qfxtextinput.cpp index 2dc096d..8eeb22d 100644 --- a/tests/auto/declarative/qfxtextinput/tst_qfxtextinput.cpp +++ b/tests/auto/declarative/qfxtextinput/tst_qfxtextinput.cpp @@ -132,8 +132,8 @@ void tst_qfxtextinput::width() for (int i = 0; i < standard.size(); i++) { QFont f; - QFontMetrics fm(f); - int metricWidth = fm.width(standard.at(i)); + QFontMetricsF fm(f); + qreal metricWidth = fm.width(standard.at(i)); QString componentStr = "import Qt 4.6\nTextInput { text: \"" + standard.at(i) + "\" }"; QmlComponent textinputComponent(&engine, componentStr.toLatin1(), QUrl()); diff --git a/tests/auto/declarative/qmlgraphicstext/tst_qmlgraphicstext.cpp b/tests/auto/declarative/qmlgraphicstext/tst_qmlgraphicstext.cpp index ba5c835..2a3cdde 100644 --- a/tests/auto/declarative/qmlgraphicstext/tst_qmlgraphicstext.cpp +++ b/tests/auto/declarative/qmlgraphicstext/tst_qmlgraphicstext.cpp @@ -45,6 +45,7 @@ #include <private/qmlgraphicstext_p.h> #include <private/qmlvaluetype_p.h> #include <QFontMetrics> +#include <math.h> class tst_qmlgraphicstext : public QObject @@ -201,8 +202,9 @@ void tst_qmlgraphicstext::width() QVERIFY(!Qt::mightBeRichText(standard.at(i))); // self-test QFont f; - QFontMetrics fm(f); - int metricWidth = fm.size(Qt::TextExpandTabs && Qt::TextShowMnemonic, standard.at(i)).width(); + QFontMetricsF fm(f); + qreal metricWidth = fm.size(Qt::TextExpandTabs && Qt::TextShowMnemonic, standard.at(i)).width(); + metricWidth = floor(metricWidth); QString componentStr = "import Qt 4.6\nText { text: \"" + standard.at(i) + "\" }"; QmlComponent textComponent(&engine, componentStr.toLatin1(), QUrl("file://")); |