From 02f297be266625b76568bb3d1ec77ae24556b78f Mon Sep 17 00:00:00 2001 From: Marco Bubke <marco.bubke@nokia.com> Date: Mon, 12 Apr 2010 12:42:24 +0200 Subject: [PATCH] Change GraphicsView settings to be more in line with Qml Task-Number: BAUHAUS-567 Reviewed-by: kkoehne --- .../components/formeditor/formeditorgraphicsview.cpp | 3 ++- .../qmldesigner/components/formeditor/formeditorscene.cpp | 1 + src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp | 4 +++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorgraphicsview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorgraphicsview.cpp index 64c302bbd32..72b657616a5 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorgraphicsview.cpp +++ b/src/plugins/qmldesigner/components/formeditor/formeditorgraphicsview.cpp @@ -43,8 +43,9 @@ FormEditorGraphicsView::FormEditorGraphicsView(QWidget *parent) : setTransformationAnchor(QGraphicsView::AnchorUnderMouse); setResizeAnchor(QGraphicsView::AnchorViewCenter); // setCacheMode(QGraphicsView::CacheNone); - setCacheMode(QGraphicsView::CacheBackground); + setCacheMode(QGraphicsView::CacheBackground); setViewportUpdateMode(QGraphicsView::BoundingRectViewportUpdate); + setOptimizationFlags(QGraphicsView::DontSavePainterState); // setViewportUpdateMode(QGraphicsView::NoViewportUpdate); setRenderHint(QPainter::Antialiasing, false); diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp index 267d2678f76..46ade624dc8 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp +++ b/src/plugins/qmldesigner/components/formeditor/formeditorscene.cpp @@ -67,6 +67,7 @@ FormEditorScene::FormEditorScene(FormEditorWidget *view, FormEditorView *editorV m_formLayerItem->setZValue(0.0); m_formLayerItem->setFlag(QGraphicsItem::ItemClipsChildrenToShape, true); view->setScene(this); + setItemIndexMethod(QGraphicsScene::NoIndex); // setItemIndexMethod(QGraphicsScene::NoIndex); } diff --git a/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp b/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp index fb3692fb52b..024d96b10b4 100644 --- a/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp +++ b/src/plugins/qmldesigner/core/instances/nodeinstanceview.cpp @@ -95,8 +95,10 @@ NodeInstanceView::NodeInstanceView(QObject *parent) m_blockStatePropertyChanges(false) { m_graphicsView->setAttribute(Qt::WA_DontShowOnScreen, true); - m_graphicsView->setViewportUpdateMode(QGraphicsView::NoViewportUpdate); + m_graphicsView->setOptimizationFlags(QGraphicsView::DontSavePainterState); + m_graphicsView->setViewportUpdateMode(QGraphicsView::BoundingRectViewportUpdate); m_graphicsView->setScene(new QGraphicsScene(m_graphicsView.data())); + m_graphicsView->scene()->setItemIndexMethod(QGraphicsScene::NoIndex); } -- GitLab