diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-02-02 09:55:14 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-02-02 09:55:14 (GMT) |
commit | aae3b2686a7e232fd10bcb59880f31da7707c608 (patch) | |
tree | b9b6652d4e30e3e226b9195d0f7b68ce20f435b7 /src/gui/painting/qpaintengine_raster.cpp | |
parent | 57d33781bd8e02904a85de7fc54f8f4e8bd299e6 (diff) | |
parent | 7b7f13d7ee1d5f93ee63a635c875accce918896a (diff) | |
download | Qt-aae3b2686a7e232fd10bcb59880f31da7707c608.zip Qt-aae3b2686a7e232fd10bcb59880f31da7707c608.tar.gz Qt-aae3b2686a7e232fd10bcb59880f31da7707c608.tar.bz2 |
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public:
Fixed def files on Symbian.
Added some missing documentation.
Fixed text rendering via scaled QPainter on rasterPaintEngine / Symbian
Documented limitations of add/setLibraryPath(s) on Symbian OS
Deployed QtMultimedia.dll on Symbian
Fixed the URL of known issues wiki page in docs
Fixing benchmark to be runnable on Symbian device
Fixing test to be runnable on Symbian devices.
Fixed no-timeout case for QProcess::waitForFinished in Symbian
Add visibility-inlines-hidden for GCCE on Symbian OS
Catch by reference rather than by value
Fixing benchmark for Symbian
Remove warning about Symbian DEF files when running configure for Windows
List item margins are too small due to invalid pixel metric value
Remove left over forward declarations
Avoided the loss of preedit text when losing focus on Symbian.
Added support for ifdeffing for manufacturer in generated pkg files
Shortening and fixing previous fix for QTBUG-6371
Update default FPU flags on Symbian to be softvfp+vfpv2
Using RunFast mode for RVCT
Diffstat (limited to 'src/gui/painting/qpaintengine_raster.cpp')
-rw-r--r-- | src/gui/painting/qpaintengine_raster.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/gui/painting/qpaintengine_raster.cpp b/src/gui/painting/qpaintengine_raster.cpp index 3f2322e..bc56ed0 100644 --- a/src/gui/painting/qpaintengine_raster.cpp +++ b/src/gui/painting/qpaintengine_raster.cpp @@ -3081,6 +3081,8 @@ void QRasterPaintEngine::drawGlyphsS60(const QPointF &p, const QTextItemInt &ti) QVarLengthArray<glyph_t> glyphs; QTransform matrix = s->matrix; matrix.translate(p.x(), p.y()); + if (matrix.type() == QTransform::TxScale) + fe->setFontScale(matrix.m11()); ti.fontEngine->getGlyphPositions(ti.glyphs, matrix, ti.flags, glyphs, positions); const QFixed aliasDelta = QFixed::fromReal(aliasedCoordinateDelta); @@ -3097,6 +3099,9 @@ void QRasterPaintEngine::drawGlyphsS60(const QPointF &p, const QTextItemInt &ti) alphaPenBlt(glyphBitmapBytes, glyphBitmapSize.iWidth, 8, x, y, glyphBitmapSize.iWidth, glyphBitmapSize.iHeight); } + if (matrix.type() == QTransform::TxScale) + fe->setFontScale(1.0); + return; } #endif // Q_OS_SYMBIAN && QT_NO_FREETYPE @@ -3269,7 +3274,9 @@ void QRasterPaintEngine::drawTextItem(const QPointF &p, const QTextItem &textIte } #elif defined (Q_OS_SYMBIAN) && defined(QT_NO_FREETYPE) // Q_WS_WIN || Q_WS_MAC - if (s->matrix.type() <= QTransform::TxTranslate) { + if (s->matrix.type() <= QTransform::TxTranslate + || (s->matrix.type() == QTransform::TxScale + && (qFuzzyCompare(s->matrix.m11(), s->matrix.m22())))) { drawGlyphsS60(p, ti); return; } |