Index: temp_moodle_dev/lamstwo/tree.js =================================================================== RCS file: /usr/local/cvsroot/temp_moodle_dev/lamstwo/Attic/tree.js,v diff -u -r1.1 -r1.2 --- temp_moodle_dev/lamstwo/tree.js 24 Nov 2006 01:54:15 -0000 1.1 +++ temp_moodle_dev/lamstwo/tree.js 23 Apr 2007 00:40:07 -0000 1.2 @@ -1,142 +1,8 @@ // Title: Tigra Tree // Description: See the demo at url // URL: http://www.softcomplex.com/products/tigra_menu_tree/ -// Version: 1.1 +// Version: 1.1 (size optimized) // Date: 11-12-2002 (mm-dd-yyyy) // Notes: This script is free. Visit official site for further details. -function tree (a_items, a_template) { - - this.a_tpl = a_template; - this.a_config = a_items; - this.o_root = this; - this.a_index = []; - this.o_selected = null; - this.n_depth = -1; - - var o_icone = new Image(),o_iconl = new Image(); - o_icone.src = a_template['icon_e']; - o_iconl.src = a_template['icon_l']; - a_template['im_e'] = o_icone; - a_template['im_l'] = o_iconl; - for (var i = 0; i < 64; i++) - if (a_template['icon_' + i]) { - var o_icon = new Image(); - a_template['im_' + i] = o_icon; - o_icon.src = a_template['icon_' + i]; - } - - this.toggle = function (n_id) { var o_item = this.a_index[n_id]; o_item.open(o_item.b_opened) }; - this.select = function (n_id) { return this.a_index[n_id].select(); }; - this.mout = function (n_id) { this.a_index[n_id].upstatus(true) }; - this.mover = function (n_id) { this.a_index[n_id].upstatus() }; - - this.a_children = []; - for (var i = 0; i < a_items.length; i++) - new tree_item(this, i); - - this.n_id = trees.length; - trees[this.n_id] = this; - - for (var i = 0; i < this.a_children.length; i++) { - document.write(this.a_children[i].init()); - open_recursively(this.a_children[i]); - } -} - -function open_recursively(tree_item){ - tree_item.open(false); - if(tree_item.a_children){ - for(var i = 0; i < tree_item.a_children.length; i++){ - open_recursively(tree_item.a_children[i]); - } - } -} - -function tree_item (o_parent, n_order) { - - this.n_depth = o_parent.n_depth + 1; - this.a_config = o_parent.a_config[n_order + (this.n_depth ? 2 : 0)]; - if (!this.a_config) return; - - this.o_root = o_parent.o_root; - this.o_parent = o_parent; - this.n_order = n_order; - this.b_opened = !this.n_depth; - - this.n_id = this.o_root.a_index.length; - this.o_root.a_index[this.n_id] = this; - o_parent.a_children[n_order] = this; - - this.a_children = []; - for (var i = 0; i < this.a_config.length - 2; i++) - new tree_item(this, i); - - this.get_icon = item_get_icon; - this.open = item_open; - this.select = item_select; - this.init = item_init; - this.upstatus = item_upstatus; - this.is_last = function () { return this.n_order == this.o_parent.a_children.length - 1 }; -} - -function item_open (b_close) { - var o_idiv = get_element('i_div' + this.o_root.n_id + '_' + this.n_id); - if (!o_idiv) return; - - if (!o_idiv.innerHTML) { - var a_children = []; - for (var i = 0; i < this.a_children.length; i++) - a_children[i]= this.a_children[i].init(); - o_idiv.innerHTML = a_children.join(''); - } - o_idiv.style.display = (b_close ? 'none' : 'block'); - - this.b_opened = !b_close; - var o_jicon = document.images['j_img' + this.o_root.n_id + '_' + this.n_id], - o_iicon = document.images['i_img' + this.o_root.n_id + '_' + this.n_id]; - if (o_jicon) o_jicon.src = this.get_icon(true); - if (o_iicon) o_iicon.src = this.get_icon(); - this.upstatus(); -} - -function item_select (b_deselect) { - if (!b_deselect) { - var o_olditem = this.o_root.o_selected; - this.o_root.o_selected = this; - if (o_olditem) o_olditem.select(true); - } - var o_iicon = document.images['i_img' + this.o_root.n_id + '_' + this.n_id]; - if (o_iicon) o_iicon.src = this.get_icon(); - get_element('i_txt' + this.o_root.n_id + '_' + this.n_id).style.fontWeight = b_deselect ? 'normal' : 'bold'; - - this.upstatus(); - return Boolean(this.a_config[1]); -} - -function item_upstatus (b_clear) { - window.setTimeout('window.status="' + (b_clear ? '' : this.a_config[0] + (this.a_config[1] ? ' ('+ this.a_config[1] + ')' : '')) + '"', 10); -} - -function item_init () { - var a_offset = [], - o_current_item = this.o_parent; - for (var i = this.n_depth; i > 1; i--) { - a_offset[i] = ''; - o_current_item = o_current_item.o_parent; - } - return '
' + (this.n_depth ? a_offset.join('') + (this.a_children.length - ? '' - : '') : '') - + '' + this.a_config[0] + '
' + (this.a_children.length ? '' : ''); -} - -function item_get_icon (b_junction) { - return this.o_root.a_tpl['icon_' + ((this.n_depth ? 0 : 32) + (this.a_children.length ? 16 : 0) + (this.a_children.length && this.b_opened ? 8 : 0) + (!b_junction && !this.a_config[0] ? 'e' : (!b_junction && this.o_root.o_selected && this.a_config[0] == this ? 4 : 0)) + (b_junction ? 2 : 0) + (b_junction && this.is_last() ? 1 : 0))]; -} - -var trees = []; -get_element = document.all ? - function (s_id) { return document.all[s_id] } : - function (s_id) { return document.getElementById(s_id) }; +function tree(tm0,tm1){this.tm2=tm1;this.tm3=tm0;this.tm4=this;this.tm5=[];this.tm6=null;this.tm7=-1;var tm8=new Image(),tm9=new Image();tm8.src=tm1['icon_e'];tm9.src=tm1['icon_l'];tm1['im_e']=tm8;tm1['im_l']=tm9;for(var i=0;i<64;i++)if(tm1['icon_'+i]){var tmA=new Image();tm1['im_'+i]=tmA;tmA.src=tm1['icon_'+i]}this.tmB=function(tmC){var tmD=this.tm5[tmC];tmD.tmE(tmD.tmF)};this.tmG=function(tmC){return this.tm5[tmC].tmG()};this.tmH=function(tmC){this.tm5[tmC].tmI(true)};this.tmJ=function(tmC){this.tm5[tmC].tmI()};this.tmK=[];for(var i=0;i1;i--){tme[i]='';tmf=tmf.tmN}return '
'+(this.tm7?tme.join('')+(this.tmK.length?'':''):'')+''+this.tm3[0]+'
'+(this.tmK.length?'':'')}function tmQ(tmg){return this.tm4.tm2['icon_'+((this.tm7?0:32)+(this.tmK.length?16:0)+(this.tmK.length&&this.tmF?8:0)+(!tmg&&this.tm4.tm6==this?4:0)+(tmg?2:0)+(tmg&&this.tmV()?1:0))]}var trees=[];tmY=document.all?function(tmh){return document.all[tmh]}:function(tmh){return document.getElementById(tmh)}; \ No newline at end of file