summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAndreas Aardal Hanssen <andreas.aardal.hanssen@nokia.com>2009-05-25 15:15:03 (GMT)
committerAndreas Aardal Hanssen <andreas.aardal.hanssen@nokia.com>2009-06-09 07:26:10 (GMT)
commit6cbc582c9699498e7f1762121bb2cff04d2596ce (patch)
treef0dc9ec547bdf76c929f33b5d73956af6df4f151 /src
parent1873203f3a3c64a2eb59bbc555eb8edf6b30315a (diff)
downloadQt-6cbc582c9699498e7f1762121bb2cff04d2596ce.zip
Qt-6cbc582c9699498e7f1762121bb2cff04d2596ce.tar.gz
Qt-6cbc582c9699498e7f1762121bb2cff04d2596ce.tar.bz2
Minor optimizations.
Diffstat (limited to 'src')
-rw-r--r--src/gui/graphicsview/qgraphicsscene.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/src/gui/graphicsview/qgraphicsscene.cpp b/src/gui/graphicsview/qgraphicsscene.cpp
index e360a07..45108ca 100644
--- a/src/gui/graphicsview/qgraphicsscene.cpp
+++ b/src/gui/graphicsview/qgraphicsscene.cpp
@@ -5022,15 +5022,14 @@ void QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem *item, QPainter *
const QRegion &exposedRegion, QWidget *widget,
QGraphicsView::OptimizationFlags optimizationFlags)
{
- if (item && (!item->isVisible()))
+ if (item && !item->d_ptr->visible)
return;
- bool hasOpacity = item && item->d_ptr->hasEffectiveOpacity;
- bool childClip = (item && (item->flags() & QGraphicsItem::ItemClipsChildrenToShape));
+ bool childClip = (item && (item->d_ptr->flags & QGraphicsItem::ItemClipsChildrenToShape));
bool savePainter = !(optimizationFlags & QGraphicsView::DontSavePainterState);
QTransform restoreTransform;
- if (childClip || hasOpacity) {
+ if (childClip) {
painter->save();
} else {
restoreTransform = painter->worldTransform();
@@ -5059,7 +5058,7 @@ void QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem *item, QPainter *
// Setup recursive clipping.
if (childClip)
painter->setClipPath(item->shape(), Qt::IntersectClip);
- if (hasOpacity)
+ if (item)
painter->setOpacity(item->effectiveOpacity());
#if 0
@@ -5075,7 +5074,7 @@ void QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem *item, QPainter *
int i;
for (i = 0; i < children.size(); ++i) {
QGraphicsItem *child = children.at(i);
- if (!(child->flags() & QGraphicsItem::ItemStacksBehindParent))
+ if (!(child->d_ptr->flags & QGraphicsItem::ItemStacksBehindParent))
break;
drawSubtreeRecursive(child, painter, viewTransform, exposedRegion, widget, optimizationFlags);
}
@@ -5089,7 +5088,7 @@ void QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem *item, QPainter *
QStyleOptionGraphicsItem option;
item->d_ptr->initStyleOption(&option, painter->worldTransform(), exposedRegion);
- bool clipsToShape = (item->flags() & QGraphicsItem::ItemClipsToShape);
+ bool clipsToShape = (item->d_ptr->flags & QGraphicsItem::ItemClipsToShape);
if (savePainter || clipsToShape)
painter->save();
if (clipsToShape)
@@ -5106,7 +5105,7 @@ void QGraphicsScenePrivate::drawSubtreeRecursive(QGraphicsItem *item, QPainter *
for (; i < children.size(); ++i)
drawSubtreeRecursive(children.at(i), painter, viewTransform, exposedRegion, widget, optimizationFlags);
- if (childClip || hasOpacity) {
+ if (childClip) {
painter->restore();
} else {
painter->setWorldTransform(restoreTransform, /* combine = */ false);