diff options
author | Bjørn Erik Nilsen <bjorn.nilsen@nokia.com> | 2009-09-10 11:21:48 (GMT) |
---|---|---|
committer | Bjørn Erik Nilsen <bjorn.nilsen@nokia.com> | 2009-09-10 11:42:16 (GMT) |
commit | e6efbad527e2b83ee8f4bb5e9fdbed9177ccd3a1 (patch) | |
tree | 46a55624c14e475788ecca984dcdf076fb20f06e /src/gui/graphicsview | |
parent | 111eaf464eafbc1130e405373067b70fed089622 (diff) | |
download | Qt-e6efbad527e2b83ee8f4bb5e9fdbed9177ccd3a1.zip Qt-e6efbad527e2b83ee8f4bb5e9fdbed9177ccd3a1.tar.gz Qt-e6efbad527e2b83ee8f4bb5e9fdbed9177ccd3a1.tar.bz2 |
Wrong opacity set on the painter in QGraphicsEffect::draw.
We have to initialize the painter with the 'effected' item's
opacity before calling QGraphicsEffect::draw; otherwise we'll
use the previous rendered item's opacity (which is wrong).
Reviewed-by: Michael Brasser
Diffstat (limited to 'src/gui/graphicsview')
-rw-r--r-- | src/gui/graphicsview/qgraphicsscene.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gui/graphicsview/qgraphicsscene.cpp b/src/gui/graphicsview/qgraphicsscene.cpp index 0fd1647..fbd78d9 100644 --- a/src/gui/graphicsview/qgraphicsscene.cpp +++ b/src/gui/graphicsview/qgraphicsscene.cpp @@ -4460,6 +4460,7 @@ void QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem *item, QPainter * painter->setWorldTransform(*transformPtr * *effectTransform); else painter->setWorldTransform(*transformPtr); + painter->setOpacity(opacity); item->d_ptr->graphicsEffect->draw(painter, source); painter->setWorldTransform(restoreTransform); sourced->info = 0; |