Mega Code Archive

 
Categories / JavaScript DHTML / GUI Components
 

Yahoo! UI Library - Tree Control 4

<!doctype html public "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>Yahoo! UI Library - Tree Control</title> <link rel="stylesheet" type="text/css" href="./examples/treeview/css/screen.css"> </head>    <body> <link rel="stylesheet" type="text/css" href="./examples/treeview/css/local/tree.css"> <div id="pageTitle">     <h3>Tree Control</h3> </div> <script type="text/javascript" src="./build/yahoo/yahoo.js" ></script> <!-- The following are required for the logger --> <script type="text/javascript" src="./build/event/event.js"></script> <script type="text/javascript" src="./build/dom/dom.js"></script> <script type="text/javascript" src="./build/logger/logger.js"></script> <!-- End logger reqs --> <script type="text/javascript" src="./build/treeview/treeview-debug.js" ></script> <style type="text/css"> /* logger default styles */ /* font size is controlled here: default 77% */ #yui-log {position:absolute;top:1em;right:1em;font-size:77%;text-align:left;} /* width is controlled here: default 31em */ .yui-log {background-color:#AAA;border:1px solid black;font-family:monospace;z-index:9000;} .yui-log p {margin:1px;padding:.1em;} .yui-log button {font-family:monospace;} .yui-log .yui-log-hd {padding:.5em;background-color:#575757;color:#FFF;} /* height is controlled here: default 20em*/ .yui-log .yui-log-bd {width:100%;height:20em;background-color:#FFF;border:1px solid gray;overflow:auto;} .yui-log .yui-log-ft {margin-top:.5em;margin-bottom:1em;} .yui-log .yui-log-ft .yui-log-categoryfilters {} .yui-log .yui-log-ft .yui-log-sourcefilters {width:100%;border-top:1px solid #575757;margin-top:.75em;padding-top:.75em;} .yui-log .yui-log-btns {position:relative;float:right;bottom:.25em;} .yui-log .yui-log-filtergrp {margin-right:.5em;} .yui-log .info {background-color:#A7CC25;} /* A7CC25 green */ .yui-log .warn {background-color:#F58516;} /* F58516 orange */ .yui-log .error {background-color:#E32F0B;} /* E32F0B red */ .yui-log .time {background-color:#A6C9D7;} /* A6C9D7 blue */ .yui-log .window {background-color:#F2E886;} /* F2E886 tan */ </style> <div id="container"> <img class="ylogo" src="./examples/treeview/img/logo.gif" alt="" />   <div id="containerTop">     <div id="header">       <h1>              </h1>       <h4>&nbsp;</h4>     </div>     <div id="main"> <div id="rightbar"> <div id="rightBarPad"> <h3>Examples</h3>     <script type="text/javascript">     YAHOO.example.logApp = function() {         var divId;         return {             init: function(p_divId, p_toggleElId, p_clearElId) {                 divId = p_divId             },             onload: function() {                 if (YAHOO.widget.Logger) {                     new YAHOO.widget.LogReader( "logDiv", { height: "400px" } );                 }             }         };     } ();      YAHOO.util.Event.on(window, "load", YAHOO.example.logApp.onload);     </script>     <div id="logDiv"></div>      </div> </div>   <div id="content">     <form name="mainForm" action="javscript:;">     <div class="newsItem">       <h3>HTML Node</h3>       <p>                </p>       <div id="expandcontractdiv">         <a href="javascript:tree.expandAll()">Expand all</a>         <a href="javascript:tree.collapseAll()">Collapse all</a>       </div>       <div id="treeDiv1"></div>     </div>     </form>   </div>            <div id="footerContainer">         <div id="footer">           <p>&nbsp;</p>         </div>       </div>     </div>   </div> </div> <script type="text/javascript"> var tree; function treeInit() {     buildRandomTextNodeTree(); } function buildRandomTextNodeTree() {     tree = new YAHOO.widget.TreeView("treeDiv1");     for (var i = 0; i < Math.floor((Math.random()*4) + 3); i++) {         var tmpNode = new YAHOO.widget.TextNode("label-" + i, tree.getRoot(), false);         buildRandomTextBranch(tmpNode);         // var tmpNode2 = new YAHOO.widget.HTMLNode("label-" + i, tree.getRoot(), false, true);         buildRandomTextBranch(tmpNode);         // buildRandomTextBranch(tmpNode2);     }     tree.draw(); } var callback = null; function buildRandomTextBranch(node) {     if (node.depth < 3) {         YAHOO.log("buildRandomTextBranch: " + node.index);         for ( var i = 0; i < Math.floor(Math.random() * 4) + 1 ; i++ ) {             tmpNode = new YAHOO.widget.TextNode(node.label + "-" + i, node, false);             // tmpNode2 = new YAHOO.widget.HTMLNode(node.html + "-" + i, node, false, true);             // if (node.depth == 2) {                 buildRandomHTMLBranch(tmpNode);                 // buildRandomHTMLBranch(tmpNode2);             // } else {                 // buildRandomTextBranch(tmpNode);             // }         }     } } var counter = 0; function buildRandomHTMLBranch(node) {     YAHOO.log("buildRandomHTMLBranch: " + node.index);     var id = "htmlnode_" + counter++;     var html = '<div id="' + id + '"' +                  ' onmouseover="enableDragDrop(this, \'' + id + '\')"' +                  ' style="border:1px solid #aaaaaa; ' +                 ' position:relative; ' +                 ' height:100px; width:200px; ' +                 ' margin-bottom:10px; ' +                 ' background-color: #c5dbfc">' +                 'Info ' + id + '</div>';     // new YAHOO.widget.HTMLNode(html, node, false, true);     new YAHOO.widget.HTMLNode(html, node, false, false); } function enableDragDrop(el, id) {     new YAHOO.util.DD(id);     el.onmouseover = null; } YAHOO.util.Event.addListener(window, "load", treeInit); </script> </body> </html>                            yui.zip( 3,714 k)