diff options
author | Kim Motoyoshi Kalland <kim.kalland@nokia.com> | 2012-06-29 17:14:10 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-07-13 11:25:25 +0200 |
commit | d83eb21fb296b73bd111d907dfb9ecde373b9bb3 (patch) | |
tree | fbe6b8be85e5a52094a310a72fe5575b7e4131ee /src/quick/items/qquickimage.cpp | |
parent | 60a13ee3fd021080d92a11b3456602103ad61a79 (diff) |
Change antialiasing method for QML2.
Since multisampling can require a lot of memory, and might not
be supported on some hardware, turn off multisampling and
implement antialiasing in the vertex shader instead. The
alternative method of antialiasing is implemented for Rectangle,
Image, BorderImage and AnimatedImage, and must be explicitly
enabled by setting the new antialiasing property.
Task-number: QTBUG-26268
Change-Id: I39a93d978658a494bf51e9f0fd02d8414eb8be12
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Diffstat (limited to 'src/quick/items/qquickimage.cpp')
-rw-r--r-- | src/quick/items/qquickimage.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/quick/items/qquickimage.cpp b/src/quick/items/qquickimage.cpp index aa68477a9d..f4089be48c 100644 --- a/src/quick/items/qquickimage.cpp +++ b/src/quick/items/qquickimage.cpp @@ -674,18 +674,15 @@ QSGNode *QQuickImage::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *) sourceRect.width() / d->pix.width(), sourceRect.height() / d->pix.height()); - if (d->mirror) { - qreal oldLeft = nsrect.left(); - nsrect.setLeft(nsrect.right()); - nsrect.setRight(oldLeft); - } - node->setHorizontalWrapMode(hWrap); node->setVerticalWrapMode(vWrap); node->setFiltering(d->smooth ? QSGTexture::Linear : QSGTexture::Nearest); node->setTargetRect(targetRect); - node->setSourceRect(nsrect); + node->setInnerTargetRect(targetRect); + node->setSubSourceRect(nsrect); + node->setMirror(d->mirror); + node->setAntialiasing(d->antialiasing); node->update(); return node; |