Opened 11 years ago

Closed 11 years ago

#5534 closed defect (fixed)

Tree: ignores changes to children attribute in dojo.data.store Item

Reported by: bill Owned by: bill
Priority: high Milestone: 1.1
Component: Dijit Version: 1.0
Keywords: Cc:
Blocked By: Blocking:

Description

If an item is moved (copied) from one parent to another, or deleted from a parent, that will be reflected by changes to said parent nodes. Specifically, their children attribute will be changed. However, Tree ignores any such changes and thus won't realize that anything happened.

Change History (5)

comment:1 Changed 11 years ago by bill

Owner: set to bill
Status: newassigned

comment:2 Changed 11 years ago by bill

(In [11977]) Modify test so you can change the children of a selected item, and set the children of a new item. Tree doesn't handle this correctly yet, but at least this is a testcase. Refs #5534.

comment:3 Changed 11 years ago by bill

Resolution: fixed
Status: assignedclosed

(In [11987]) Handle changes to a node's list of children, reported via dojo.data.api.Notification.onSet. Fixes #5534. Tree still doesn't handle an item with multiple parents (#5535). Will fix that in the future. Seeing problems with DnD (a drop onto a child node appears as a drop onto the root) but seems unrelated to this checkin. Will look at that next. !strict

comment:4 Changed 11 years ago by bill

Resolution: fixed
Status: closedreopened

Seeing exception when a nested item is deleted. Try deleting node1.1 from http://archive.dojotoolkit.org/nightly/dojotoolkit/dijit/tests/test_Tree_Notification_API_Support.htm.

Problem is that the Tree.onSetItem(parent, ...) call orphans the child Tree, and then the Tree.onDeleteItem(child) gets confused because the child TreeNode? has no parent.

comment:5 Changed 11 years ago by bill

Resolution: fixed
Status: reopenedclosed

(In [12019]) Tree: fix handling of items deleted from data store (was getting confused because the TreeNode? corresponding to the item was orphaned due to onSetItem(parent, "children", ...) call. Fixes #5534. Also fix a lint issue.

Note: See TracTickets for help on using tickets.