TreeView - Release Notes 0.11.3 * popNode now clears the tree, previousSibling, nextSibling, and parent properties of the node that is being removed from the tree. * Fixed the paths to the images in the tree.css file that is included in build/assets. 0.11.0 * Added TreeView -> popNode, which differs from removeNode in that the node's children are preserved so the entire branch can be re-inserted into another part of the tree, or another tree. * Added TreeView -> getNodesByProperty, which differs from getNodeByProperty by returning an array of all nodes that have the specified property rather than just the first one. * Added Node -> insertBefore, insertAfter, and appendTo. These method can be used to reorganize the tree. * removeChildren properly resets the node icon when executed against a collpased node. * Moved depth assignment from the constructor to appendChild so that the value is set properly if the node is moved within the tree. * Fixed broken loop in removeChildren. * RootNode -> loadComplete calls tree.draw for hot-wiring the dynamic load feature for the top level nodes. * The treeview constructor will accept an element instead of an id. 0.10.0 * If the child collection changes prior to a refresh(), the icon is now changed appropriately. * Added TreeView removeChildren(node). This will recursively purge the node's children, and reset its dynamic load state. * previousSibling and nextSibling are now adjusted correctly when a node is deleted. * expand()/collapse() now will not expand/collapse the node if false is returned from the onExpand/onCollapse event handlers. * The onExpand and onCollapse events now fire before the node is expanded or collapsed so that the implementer can modify the node's child collection prior to display. * The childrenRendered property previous was used to indicate both that a dynamically loaded node has received its data, and also to indicate that the children html has been created. This has been split into two properties. dynamicLoadComplete and childrenRendered. * Implemented the renderHidden flag. If set to true, the html for the entire tree will be created when tree.draw() is called, not just the html for the visible nodes. * Added an onLabelClick listener to TextNode * TreeView.removeNode no longer automatically refreshes the tree. It has an optional parameter to perform the refresh. * removeNode can now be executed on nodes that have not been rendered. * You can now delete top-level nodes. * Added onCheckClick listener to the TaskNode example * Added Node.iconMode, which is a property that configures the way dynamically loaded nodes are displayed when they are expanded and contain no children. * TreeView/Node.setDynamicLoad now accepts an optional second parameter to set the iconMode property. * Fixed an issue in the TaskNode.js example that prevented setting the checked state of a node through the constructor. * Fixed an issue in HTMLNode that caused rendering issues when hasIcon was set to true. * Added TreeView.removeNode * Added Node.refresh