summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner
diff options
context:
space:
mode:
authorThomas Hartmann <thomas.hartmann@qt.io>2018-05-16 14:42:51 +0200
committerTim Jenssen <tim.jenssen@qt.io>2018-05-16 12:49:10 +0000
commit64c48933c887ff2fffde92ce3ce3c9c0785ad682 (patch)
treefc633768db0ec4f4ca86ef5730f51de222a51518 /src/plugins/qmldesigner
parentb2a1c189e0114f310e33150d1900da0ea78c77fa (diff)
downloadqt-creator-64c48933c887ff2fffde92ce3ce3c9c0785ad682.tar.gz
QmlDesigner.PropertyEditor: Always set current model on context object
We just set the first model once. This means that many functions only worked on the file that was the first one opened. This bug was undetected for some time, because the checks were silent. Replacing all related checks by proper QTC_ASSERTs. Change-Id: If46cb7fb7d0d3ae2bb9772a93eece5fcf1fe450b Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Diffstat (limited to 'src/plugins/qmldesigner')
-rw-r--r--src/plugins/qmldesigner/components/propertyeditor/propertyeditorcontextobject.cpp19
-rw-r--r--src/plugins/qmldesigner/components/propertyeditor/propertyeditorqmlbackend.cpp2
2 files changed, 9 insertions, 12 deletions
diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorcontextobject.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorcontextobject.cpp
index 1584d88255..67183e1555 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorcontextobject.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorcontextobject.cpp
@@ -33,6 +33,7 @@
#include <coreplugin/messagebox.h>
#include <utils/algorithm.h>
+#include <utils/qtcassert.h>
#include <QQmlContext>
@@ -135,15 +136,13 @@ QStringList PropertyEditorContextObject::autoComplete(const QString &text, int p
void PropertyEditorContextObject::toogleExportAlias()
{
- if (!m_model || !m_model->rewriterView())
- return;
+ QTC_ASSERT(m_model && m_model->rewriterView(), return);
/* Ideally we should not missuse the rewriterView
* If we add more code here we have to forward the property editor view */
RewriterView *rewriterView = m_model->rewriterView();
- if (rewriterView->selectedModelNodes().isEmpty())
- return;
+ QTC_ASSERT(!rewriterView->selectedModelNodes().isEmpty(), return);
const ModelNode selectedNode = rewriterView->selectedModelNodes().constFirst();
@@ -174,15 +173,13 @@ void PropertyEditorContextObject::toogleExportAlias()
void PropertyEditorContextObject::changeTypeName(const QString &typeName)
{
- if (!m_model || !m_model->rewriterView())
- return;
+ QTC_ASSERT(m_model && m_model->rewriterView(), return);
/* Ideally we should not missuse the rewriterView
* If we add more code here we have to forward the property editor view */
RewriterView *rewriterView = m_model->rewriterView();
- if (rewriterView->selectedModelNodes().isEmpty())
- return;
+ QTC_ASSERT(!rewriterView->selectedModelNodes().isEmpty(), return);
ModelNode selectedNode = rewriterView->selectedModelNodes().constFirst();
@@ -210,15 +207,13 @@ void PropertyEditorContextObject::changeTypeName(const QString &typeName)
void PropertyEditorContextObject::insertKeyframe(const QString &propertyName)
{
- if (!m_model || !m_model->rewriterView())
- return;
+ QTC_ASSERT(m_model && m_model->rewriterView(), return);
/* Ideally we should not missuse the rewriterView
* If we add more code here we have to forward the property editor view */
RewriterView *rewriterView = m_model->rewriterView();
- if (rewriterView->selectedModelNodes().isEmpty())
- return;
+ QTC_ASSERT(!rewriterView->selectedModelNodes().isEmpty(), return);
ModelNode selectedNode = rewriterView->selectedModelNodes().constFirst();
diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorqmlbackend.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorqmlbackend.cpp
index 2cb48df217..6ac07433a4 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorqmlbackend.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorqmlbackend.cpp
@@ -271,6 +271,8 @@ void PropertyEditorQmlBackend::setup(const QmlObjectNode &qmlObjectNode, const Q
if (qmlObjectNode.isValid()) {
+ m_contextObject->setModel(propertyEditor->model());
+
qCInfo(propertyEditorBenchmark) << Q_FUNC_INFO;
QTime time;