QmlDesigner: Insert added dynamic properties to correct position

Dynamic properties were sorted on initial open, but newly added
properties were just appended.

Fixes: QDS-9019
Change-Id: I20a47e3f3554274c794ee2cdea8b8c925c1c57fd
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Miikka Heikkinen
2023-02-03 13:29:26 +02:00
parent 7d421833d7
commit 0c0e7f1fe1

View File

@@ -557,7 +557,8 @@ void DynamicPropertiesModel::addProperty(const QVariant &propertyValue,
idItem = new QStandardItem(idOrTypeNameForNode(abstractProperty.parentModelNode()));
updateCustomData(idItem, abstractProperty);
propertyNameItem = new QStandardItem(QString::fromUtf8(abstractProperty.name()));
const QString propName = QString::fromUtf8(abstractProperty.name());
propertyNameItem = new QStandardItem(propName);
items.append(idItem);
items.append(propertyNameItem);
@@ -569,6 +570,13 @@ void DynamicPropertiesModel::addProperty(const QVariant &propertyValue,
propertyValueItem->setData(propertyValue, Qt::DisplayRole);
items.append(propertyValueItem);
for (int i =0; i < rowCount(); i++) {
if (data(index(i, PropertyNameRow)).toString() > propName) {
insertRow(i, items);
return;
}
}
appendRow(items);
}