aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/designer/designersupport.cpp
diff options
context:
space:
mode:
authorJerome Pasion <jerome.pasion@digia.com>2012-11-02 14:59:56 +0100
committerJerome Pasion <jerome.pasion@digia.com>2012-11-02 15:02:08 +0100
commit47c45bb1e487b3823281683c1110d9269f144582 (patch)
tree4c687d46d9aa7d90f064a25e6c7f0241ae28e16d /src/quick/designer/designersupport.cpp
parent677be9a27770ff48dd771ec4fc1c66139aac4aa8 (diff)
parent7d94fa8e074ba816751c60bd0ad3c63b3c0b0a27 (diff)
Merge branch 'master' of ssh://codereview.qt-project.org/qt/qtdeclarative into newdocs
Diffstat (limited to 'src/quick/designer/designersupport.cpp')
-rw-r--r--src/quick/designer/designersupport.cpp31
1 files changed, 30 insertions, 1 deletions
diff --git a/src/quick/designer/designersupport.cpp b/src/quick/designer/designersupport.cpp
index c06e8f0579..1b0fea9190 100644
--- a/src/quick/designer/designersupport.cpp
+++ b/src/quick/designer/designersupport.cpp
@@ -46,9 +46,13 @@
#include <QtQuick/private/qquickrectangle_p.h>
#include <private/qqmlengine_p.h>
#include <private/qquickview_p.h>
+#include <private/qquickwindowmanager_p.h>
#include <QtQuick/private/qquickstategroup_p.h>
#include <QtGui/QImage>
+#include "designerwindowmanager_p.h"
+
+
QT_BEGIN_NAMESPACE
DesignerSupport::DesignerSupport()
@@ -119,6 +123,7 @@ QImage DesignerSupport::renderImageForItem(QQuickItem *referencedItem, const QRe
return QImage();
renderTexture->setRect(boundingRect);
renderTexture->setSize(imageSize);
+ renderTexture->markDirtyTexture();
renderTexture->updateTexture();
QImage renderImage = renderTexture->toImage();
@@ -138,6 +143,14 @@ bool DesignerSupport::isDirty(QQuickItem *referencedItem, DirtyType dirtyType)
return QQuickItemPrivate::get(referencedItem)->dirtyAttributes & dirtyType;
}
+void DesignerSupport::addDirty(QQuickItem *referencedItem, DesignerSupport::DirtyType dirtyType)
+{
+ if (referencedItem == 0)
+ return;
+
+ QQuickItemPrivate::get(referencedItem)->dirtyAttributes |= dirtyType;
+}
+
void DesignerSupport::resetDirty(QQuickItem *referencedItem)
{
if (referencedItem == 0)
@@ -407,7 +420,23 @@ bool DesignerSupport::isValidHeight(QQuickItem *item)
void DesignerSupport::updateDirtyNode(QQuickItem *item)
{
- QQuickWindowPrivate::get(item->window())->updateDirtyNode(item);
+ if (item->window())
+ QQuickWindowPrivate::get(item->window())->updateDirtyNode(item);
+}
+
+void DesignerSupport::activateDesignerWindowManager()
+{
+ QQuickWindowManager::setInstance(new DesignerWindowManager);
+}
+
+void DesignerSupport::createOpenGLContext(QQuickWindow *window)
+{
+ DesignerWindowManager::createOpenGLContext(window);
+}
+
+void DesignerSupport::polishItems(QQuickWindow *window)
+{
+ QQuickWindowPrivate::get(window)->polishItems();
}
QT_END_NAMESPACE