diff options
author | Marco Bubke <marco.bubke@nokia.com> | 2011-08-31 18:29:13 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-08-31 18:34:27 +0200 |
commit | 8801dd4f173a4e7676400dd18d76d89dfe3b3791 (patch) | |
tree | 6a0edc28224360eb51d2e003475414603946126f /src/declarative/designer/designersupport.cpp | |
parent | a07f68eff5ac4696a551f083d186a685f7ef043d (diff) |
Add bounding rectangle for rendering images in designer support
Elements can be outside the root items bounding rectange. So we compute
the bounding rectangle of an item and its children on the designer side. We
exclude all children which are the designer created.
Change-Id: I3c4f9ca5291c8f65e3670be1fd0900edf449b46f
Reviewed-on: http://codereview.qt.nokia.com/3963
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Diffstat (limited to 'src/declarative/designer/designersupport.cpp')
-rw-r--r-- | src/declarative/designer/designersupport.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/declarative/designer/designersupport.cpp b/src/declarative/designer/designersupport.cpp index 824642a989..91186a4a2e 100644 --- a/src/declarative/designer/designersupport.cpp +++ b/src/declarative/designer/designersupport.cpp @@ -101,7 +101,7 @@ void DesignerSupport::derefFromEffectItem(QSGItem *referencedItem, bool unhide) QSGItemPrivate::get(referencedItem)->derefFromEffectItem(unhide); } -QImage DesignerSupport::renderImageForItem(QSGItem *referencedItem) +QImage DesignerSupport::renderImageForItem(QSGItem *referencedItem, const QRectF &boundingRect, const QSize &imageSize) { if (referencedItem == 0 || referencedItem->parentItem() == 0) { qDebug() << __FILE__ << __LINE__ << "Warning: Item can be rendered."; @@ -113,8 +113,8 @@ QImage DesignerSupport::renderImageForItem(QSGItem *referencedItem) Q_ASSERT(renderTexture); if (renderTexture == 0) return QImage(); - renderTexture->setRect(referencedItem->boundingRect()); - renderTexture->setSize(referencedItem->boundingRect().size().toSize()); + renderTexture->setRect(boundingRect); + renderTexture->setSize(imageSize); renderTexture->updateTexture(); QImage renderImage = renderTexture->toImage(); @@ -123,8 +123,6 @@ QImage DesignerSupport::renderImageForItem(QSGItem *referencedItem) if (renderImage.size().isEmpty()) qDebug() << __FILE__ << __LINE__ << "Warning: Image is empty."; - qDebug() << __FUNCTION__ << renderImage.size(); - return renderImage; } |