From fbd370e2150d29df9262aee3417bc583922f1c6f Mon Sep 17 00:00:00 2001
From: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Date: Thu, 23 Sep 2010 15:47:06 +0200
Subject: [PATCH] QmlDesigner.Model: Add notifier refactoring at
 nodeOrderChanged

RewriterView and NodeInstanceView was not notified about a model change.
---
 .../qmldesigner/designercore/model/model.cpp  | 23 ++++++++++++++-----
 1 file changed, 17 insertions(+), 6 deletions(-)

diff --git a/src/plugins/qmldesigner/designercore/model/model.cpp b/src/plugins/qmldesigner/designercore/model/model.cpp
index 623c848a3b7..4f046fdd4bf 100644
--- a/src/plugins/qmldesigner/designercore/model/model.cpp
+++ b/src/plugins/qmldesigner/designercore/model/model.cpp
@@ -886,17 +886,28 @@ void ModelPrivate::notifyNodeOrderChanged(const InternalNodeListPropertyPointer
     bool resetModel = false;
     QString description;
 
+    try {
+        if (rewriterView())
+            rewriterView()->nodeOrderChanged(NodeListProperty(internalListPropertyPointer, model(), rewriterView()),
+                               ModelNode(internalNodePointer, model(), rewriterView()),
+                               oldIndex);
+    } catch (RewritingException &e) {
+        description = e.description();
+        resetModel = true;
+    }
+
     foreach (const QWeakPointer<AbstractView> &view, m_viewList) {
         Q_ASSERT(!view.isNull());
-        try {
-            view->nodeOrderChanged(NodeListProperty(internalListPropertyPointer, model(), view.data()),
+        view->nodeOrderChanged(NodeListProperty(internalListPropertyPointer, model(), view.data()),
                                    ModelNode(internalNodePointer, model(), view.data()),
                                    oldIndex);
-        } catch (RewritingException &e) {
-            description = e.description();
-            resetModel = true;
-        }
     }
+
+    if (nodeInstanceView())
+        nodeInstanceView()->nodeOrderChanged(NodeListProperty(internalListPropertyPointer, model(), nodeInstanceView()),
+                           ModelNode(internalNodePointer, model(), nodeInstanceView()),
+                           oldIndex);
+
     if (resetModel) {
         resetModelByRewriter(description);
     }
-- 
GitLab