diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp index a07a2b7f94ccb23e4bc0ca02ef0ad6ce33e45986..780343f9a0437db260f7e05c57d4ae045bf6c773 100644 --- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp +++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditor.cpp @@ -83,7 +83,7 @@ void createPropertyEditorValue(const QmlObjectNode &fxObjectNode, const QString valueObject = new PropertyEditorValue(propertyMap); QObject::connect(valueObject, SIGNAL(valueChanged(QString)), propertyMap, SIGNAL(valueChanged(QString))); QObject::connect(valueObject, SIGNAL(expressionChanged(QString)), propertyEditor, SLOT(changeExpression(QString))); - propertyMap->insert(propertyName, QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject)); + propertyMap->insert(propertyName, QVariant::fromValue(valueObject)); } valueObject->setName(propertyName); valueObject->setModelNode(fxObjectNode); @@ -129,14 +129,14 @@ void PropertyEditor::NodeType::setup(const QmlObjectNode &fxObjectNode, const QS valueObject->setModelNode(fxObjectNode.modelNode()); valueObject->setValue(fxObjectNode.modelNode().simplifiedTypeName()); QObject::connect(valueObject, SIGNAL(valueChanged(QString)), &m_backendValuesPropertyMap, SIGNAL(valueChanged(QString))); - m_backendValuesPropertyMap.insert("className", QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject)); + m_backendValuesPropertyMap.insert("className", QVariant::fromValue(valueObject)); // id valueObject = new PropertyEditorValue(&m_backendValuesPropertyMap); valueObject->setName("id"); valueObject->setValue(fxObjectNode.id()); QObject::connect(valueObject, SIGNAL(valueChanged(QString)), &m_backendValuesPropertyMap, SIGNAL(valueChanged(QString))); - m_backendValuesPropertyMap.insert("id", QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject)); + m_backendValuesPropertyMap.insert("id", QVariant::fromValue(valueObject)); // anchors m_backendAnchorBinding.setup(QmlItemNode(fxObjectNode.modelNode())); diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp index 4fa12cf2e06450c0d8fa8b326d0587460eda9d60..cd9335d69e864ee7b90c3af841e561a911200ea2 100644 --- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp +++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp @@ -306,7 +306,7 @@ void PropertyEditorNodeWrapper::setup() valueObject->setValue(fxObjectNode.instanceValue(propertyName)); connect(valueObject, SIGNAL(valueChanged(QString)), &m_valuesPropertyMap, SIGNAL(valueChanged(QString))); - m_valuesPropertyMap.insert(propertyName, QmlMetaType::qmlType(valueObject->metaObject())->fromObject(valueObject)); + m_valuesPropertyMap.insert(propertyName, QVariant::fromValue(valueObject)); } } connect(&m_valuesPropertyMap, SIGNAL(valueChanged(const QString &)), this, SLOT(changeValue(const QString&))); diff --git a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp index 7d8de8229169d73cca7f0fb1eeca4e4173298ffe..34eb1aca71abb26a818d3c6420821b25368ebd60 100644 --- a/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp +++ b/src/plugins/qmldesigner/core/instances/objectnodeinstance.cpp @@ -301,10 +301,7 @@ static bool isObject(const QmlMetaProperty &metaProperty) static QVariant objectToVariant(QObject *object) { - const QMetaObject *metaObject = object->metaObject(); - QmlType *qmlType = QmlMetaType::qmlType(metaObject); - - return qmlType->fromObject(object); + return QVariant::fromValue(object); } static void removeObjectFromList(const QmlMetaProperty &metaProperty, QObject *object, QmlEngine *engine)