From 3d3d3d3884cbf9a426bef8d509f46d2a47321a98 Mon Sep 17 00:00:00 2001 From: Ariya Hidayat Date: Thu, 16 Jul 2009 11:13:49 +0200 Subject: Fixlets for the S60 versions. (1) Do not downscale digits painting if the font is too large. (2) Disable antialiasing and smoothscaling during the animation. --- digiflip/digiflip.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/digiflip/digiflip.cpp b/digiflip/digiflip.cpp index 87c4620..7a4b362 100644 --- a/digiflip/digiflip.cpp +++ b/digiflip/digiflip.cpp @@ -97,17 +97,24 @@ protected: } QPixmap drawDigits(int n, const QRect &rect) { + + int scaleFactor = 2; +#if defined(Q_OS_SYMBIAN) + if (rect.height() > 240) + scaleFactor = 1; +#endif + QString str = QString::number(n); if (str.length() == 1) str.prepend("0"); QFont font; font.setFamily("Helvetica"); - int fontHeight = 2 * 0.55 * rect.height(); + int fontHeight = scaleFactor * 0.55 * rect.height(); font.setPixelSize(fontHeight); font.setBold(true); - QPixmap pixmap(rect.size() * 2); + QPixmap pixmap(rect.size() * scaleFactor); pixmap.fill(Qt::transparent); QLinearGradient gradient(QPoint(0, 0), QPoint(0, pixmap.height())); @@ -167,8 +174,10 @@ protected: void paintFlip() { QPainter p(this); +#if !defined(Q_OS_SYMBIAN) p.setRenderHint(QPainter::SmoothPixmapTransform, true); p.setRenderHint(QPainter::Antialiasing, true); +#endif p.fillRect(rect(), Qt::black); int hw = width() / 2; -- cgit v1.2.3