/* * Copyright 2005 Tridium, Inc. All Rights Reserved. */ /** * Tree. * * @author Andy Frank * @creation 26 Jul 06 * @version $Revision$ $Date$ * @since Baja 1.0 */ // Image locations var imgFolderClosed = "/ord?file:^tree/folderClosed.png"; var imgFolderOpen = "/ord?file:^tree/folderOpen.png"; var imgExpand = "/ord?file:^tree/expand.png"; var imgCollapse = "/ord?file:^tree/collapse.png"; /** * Node is used to build the initial tree structure. */ function Node(name, href, target) { this.name = name; this.href = href; this.target = target; this.kids = new Array(); } /** * Initialize the tree in the DOM using this node structure. */ function initTree(root) { var tree = document.getElementById("tree"); addTreeNode(0, tree, root); } /** * Add a new node to the tree under this parent. */ function addTreeNode(level, parent, node) { var elem = createTreeNode(level, node) parent.appendChild(elem); for (var i=0; i 0) { html += " "; } else { html += " "; } html += ""; var elem = document.createElement("div"); elem.innerHTML = html; if (level > 1) { elem.style.display = "none"; elem.style.visibility = "hidden"; elem.style.paddingLeft = "16px"; } return elem; } /** * Toggle the expansion state for this node. */ function toggle(event) { var target = (event.target) ? event.target: window.event.srcElement; var img = target; var fol = img.nextSibling; var div = img.parentNode; var kids = div.childNodes; if (endsWith(target.src, imgExpand)) { // Expand img.src = imgCollapse; fol.src = imgFolderOpen; for (var i=0; i