##
## $Source: /usr/cvsroot/melati/melati/src/main/java/org/melati/templets/html/org.melati.util.JSDynamicTree.wm,v $
## $Revision: 1.10 $
##
## Copyright (C) 2002 Myles Chippendale
##
## Part of Melati (http://melati.org), a framework for the rapid
## development of clean, maintainable web applications.
##
## Melati is free software; Permission is granted to copy, distribute
## and/or modify this software under the terms either:
##
## (a) the GNU General Public License as published by the Free Software
##    Foundation; either version 2 of the License, or (at your option)
##    any later version,
##
##    or
##
## (b) any version of the Melati Software License, as published
##    at http://melati.org
##
## You should have received a copy of the GNU General Public License and
## the Melati Software License along with this program;
## if not, write to the Free Software Foundation, Inc.,
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA to obtain the
## GNU General Public License and visit http://melati.org to obtain the
## Melati Software License.
##
## Feel free to contact the Developers of Melati (http://melati.org),
## if you would like to work out a different arrangement than the options
## outlined here.  It is our intention to allow Melati to be used by as
## wide an audience as possible.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
## GNU General Public License for more details.
##
## Contact details for copyright holder:
##
##     Myles Chippendale <mylesc At paneris.org>
##     http://paneris.org/
##     29 Stanley Road, Oxford, OX4 1QY, UK
##

#set $tree = $object

<script language="JavaScript1.2" type="text/javscript" 
        src="$melati.JavascriptLibraryURL/trees.js"></script>

#foreach $node in $tree.flattened() #begin
<div id="Layer$node.UniqueName" style="position:absolute" name="Layer$node.UniqueName"></div>
#end

<div id="loadbuffer" style="position:absolute; visibility:hidden;" name="loadbuffer"></div>
<iframe name="loadframe" height=0 width=0></iframe>

<script language="JavaScript1.2" type="text/javascript">

// IE remembers the last contents of the IFrame :-(
if(!isNav4) parent.loadframe.document.location = "blank.html";

function init() {
// Go through nodes adding items and lists

#foreach $node in $tree.flattened($tree.DepthPerDownload) #begin
  Node$node.UniqueName = new TreeNode(
#parse "$tree.NodeLabelTemplet", $node.Depth, $node.isLeaf(), "$node.UniqueName");
  #if ($node.Parent) #begin
  Node$(node.UniqueName).setParent(Node$node.Parent.UniqueName;)
  #end
#end

var roots=[];
#foreach $root in $tree.flattened(0)
#begin
roots[roots.length] = Node$(root.UniqueName);
#end
var tree = new DynamicTree(roots,
                $tree.X,
                $tree.Y,
                $tree.NodeWidth,
                $tree.NodeHeight,
                "$tree.NodeColour",
                $tree.Indent,
                "$tree.OpenedImage",
                "$tree.ClosedImage",
                "$tree.LeafImage",
                $tree.DepthPerDownload
            );
tree.display();
}

// In case someone forgets the onload in the body tag
if (window.onload == null) window.onload = init;
</script>


