diff options
Diffstat (limited to 'examples/quick/scenegraph/rendernode/softwarerenderer.cpp')
-rw-r--r-- | examples/quick/scenegraph/rendernode/softwarerenderer.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/examples/quick/scenegraph/rendernode/softwarerenderer.cpp b/examples/quick/scenegraph/rendernode/softwarerenderer.cpp index 2f11c56f29..06e406874a 100644 --- a/examples/quick/scenegraph/rendernode/softwarerenderer.cpp +++ b/examples/quick/scenegraph/rendernode/softwarerenderer.cpp @@ -68,7 +68,7 @@ void SoftwareRenderNode::render(const RenderState *renderState) p->setOpacity(inheritedOpacity()); const QRegion *clipRegion = renderState->clipRegion(); if (clipRegion && !clipRegion->isEmpty()) - p->setClipRegion(*clipRegion); + p->setClipRegion(*clipRegion, Qt::IntersectClip); const QPointF p0(m_item->width() - 1, m_item->height() - 1); const QPointF p1(0, 0); @@ -89,3 +89,13 @@ QSGRenderNode::StateFlags SoftwareRenderNode::changedStates() const { return 0; } + +QSGRenderNode::RenderingFlags SoftwareRenderNode::flags() const +{ + return BoundedRectRendering; +} + +QRectF SoftwareRenderNode::rect() const +{ + return QRect(0, 0, m_item->width(), m_item->height()); +} |