forked from qt-creator/qt-creator
QmlDesigner: Remove recursive NodeInstanceMetaObject creation
Change-Id: I3e5f46413767f5d1649a0c526f69f434e897b597 Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
This commit is contained in:
@@ -165,20 +165,7 @@ static bool hasPropertiesWitoutNotifications(const QMetaObject *metaObject)
|
||||
|
||||
void ObjectNodeInstance::initializePropertyWatcher(const ObjectNodeInstance::Pointer &objectNodeInstance)
|
||||
{
|
||||
const QMetaObject *metaObject = objectNodeInstance->object()->metaObject();
|
||||
m_metaObject = NodeInstanceMetaObject::createNodeInstanceMetaObject(objectNodeInstance, nodeInstanceServer()->engine());
|
||||
for (int propertyIndex = QObject::staticMetaObject.propertyCount(); propertyIndex < metaObject->propertyCount(); propertyIndex++) {
|
||||
if (QQmlMetaType::isQObject(metaObject->property(propertyIndex).userType())) {
|
||||
QObject *propertyObject = QQmlMetaType::toQObject(metaObject->property(propertyIndex).read(objectNodeInstance->object()));
|
||||
if (propertyObject && hasPropertiesWitoutNotifications(propertyObject->metaObject())) {
|
||||
NodeInstanceMetaObject::createNodeInstanceMetaObject(objectNodeInstance,
|
||||
propertyObject,
|
||||
metaObject->property(propertyIndex).name(),
|
||||
nodeInstanceServer()->engine());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
m_signalSpy.setObjectNodeInstance(objectNodeInstance);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user