Fix #9294.
- Fix incorrect order of operations in ValueNodeManager. - Upon receiving a changed notification, VariableTableModel needs to make tree table aware that the previous nodes have been removed.
This commit is contained in:
parent
287cda6f72
commit
a4df762f17
@ -103,11 +103,12 @@ ValueNodeManager::ValueNodeChanged(ValueNodeChild* nodeChild,
|
||||
|
||||
AutoLocker<ValueNodeContainer> containerLocker(fContainer);
|
||||
|
||||
for (int32 i = fListeners.CountItems() - 1; i >= 0; i--)
|
||||
fListeners.ItemAt(i)->ValueNodeChanged(nodeChild, oldNode, newNode);
|
||||
|
||||
if (oldNode != NULL)
|
||||
newNode->CreateChildren();
|
||||
|
||||
for (int32 i = fListeners.CountItems() - 1; i >= 0; i--)
|
||||
fListeners.ItemAt(i)->ValueNodeChanged(nodeChild, oldNode, newNode);
|
||||
}
|
||||
|
||||
|
||||
|
@ -930,8 +930,10 @@ VariablesView::VariableTableModel::ValueNodeChanged(ValueNodeChild* nodeChild,
|
||||
if (modelNode == NULL)
|
||||
return;
|
||||
|
||||
if (oldNode != NULL)
|
||||
if (oldNode != NULL) {
|
||||
ValueNodeChildrenDeleted(oldNode);
|
||||
NotifyNodeChanged(modelNode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user