From e721b9f70f7af001f1d3ae55c870f70a082bb054 Mon Sep 17 00:00:00 2001 From: Lasse Holmstedt <lasse.holmstedt@nokia.com> Date: Wed, 14 Jul 2010 17:47:43 +0200 Subject: [PATCH] Clear editor items (highlights, selections) when not in design mode --- src/tools/qml/qmlobserver/qdeclarativedesignview.cpp | 11 ++++++++++- src/tools/qml/qmlobserver/qdeclarativedesignview.h | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/tools/qml/qmlobserver/qdeclarativedesignview.cpp b/src/tools/qml/qmlobserver/qdeclarativedesignview.cpp index 952a3126257..f1afaaa40e9 100644 --- a/src/tools/qml/qmlobserver/qdeclarativedesignview.cpp +++ b/src/tools/qml/qmlobserver/qdeclarativedesignview.cpp @@ -67,6 +67,12 @@ void QDeclarativeDesignView::reloadView() emit reloadRequested(); } +void QDeclarativeDesignView::clearEditorItems() +{ + clearHighlight(); + setSelectedItems(QList<QGraphicsItem*>()); +} + void QDeclarativeDesignView::leaveEvent(QEvent *event) { if (!designModeBehavior()) { @@ -89,7 +95,7 @@ void QDeclarativeDesignView::mousePressEvent(QMouseEvent *event) void QDeclarativeDesignView::mouseMoveEvent(QMouseEvent *event) { if (!designModeBehavior()) { - clearHighlight(); + clearEditorItems(); QDeclarativeView::mouseMoveEvent(event); return; } @@ -231,6 +237,9 @@ void QDeclarativeDesignView::setDesignModeBehavior(bool value) if (rootObject()) m_subcomponentEditorTool->pushContext(rootObject()); } + + if (!m_designModeBehavior) + clearEditorItems(); } bool QDeclarativeDesignView::designModeBehavior() const diff --git a/src/tools/qml/qmlobserver/qdeclarativedesignview.h b/src/tools/qml/qmlobserver/qdeclarativedesignview.h index 853a71adb13..fae5fca983e 100644 --- a/src/tools/qml/qmlobserver/qdeclarativedesignview.h +++ b/src/tools/qml/qmlobserver/qdeclarativedesignview.h @@ -94,6 +94,7 @@ private Q_SLOTS: void applyChangesFromClient(); private: + void clearEditorItems(); void createToolbar(); void changeToSelectTool(); QList<QGraphicsItem*> filterForCurrentContext(QList<QGraphicsItem*> &itemlist) const; -- GitLab