summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qpaintengine_raster.cpp
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-02 09:55:14 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-02 09:55:14 (GMT)
commitaae3b2686a7e232fd10bcb59880f31da7707c608 (patch)
treeb9b6652d4e30e3e226b9195d0f7b68ce20f435b7 /src/gui/painting/qpaintengine_raster.cpp
parent57d33781bd8e02904a85de7fc54f8f4e8bd299e6 (diff)
parent7b7f13d7ee1d5f93ee63a635c875accce918896a (diff)
downloadQt-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.cpp9
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;
}