/*
	Feel free to use your custom icons for the tree. Make sure they are all of the same size.
	If you don't use some keys you can just remove them from this config
*/

var TREE_TPL = {

	// general
	'target':'_self',	// name of the frame links will be opened in
							// other possible values are:
							// _blank, _parent, _search, _self and _top

	// icons - junctions	
	'icon_18':'menu/icons/plus.gif', // junction for closed node
	'icon_26':'menu/icons/minus.gif',// junction for opened node

	// icons - misc
	'icon_e':'menu/icons/empty.gif', // empty image
	'icon_l':'menu/icons/line.gif',  // vertical line
	
	// styles - root
	'style_48':'mout', // normal root caption style
	'style_52':'mout', // selected root catption style
	'style_56':'mout', // opened root catption style
	'style_60':'mout', // selected opened root catption style
	'style_112':'mover', // mouseovered normal root caption style
	'style_116':'mover', // mouseovered selected root catption style
	'style_120':'mover', // mouseovered opened root catption style
	'style_124':'mover', // mouseovered selected opened root catption style
	
	// styles - node
	'style_16':'mout', // normal node caption style
	'style_20':'mout', // selected node catption style
	'style_24':'mout', // opened node catption style
	'style_28':'mout', // selected opened node catption style
	'style_80':'mover', // mouseovered normal node caption style
	'style_84':'mover', // mouseovered selected node catption style
	'style_88':'mover', // mouseovered opened node catption style
	'style_92':'mover', // mouseovered selected opened node catption style

	// styles - leaf
	'style_0':'mout', // normal leaf caption style
	'style_4':'mout', // selected leaf catption style
	'style_64':'mover', // mouseovered normal leaf caption style
	'style_68':'mover', // mouseovered selected leaf catption style
	
	// event handlers - item
	'onItemOpen':'onItemOpenHandler', // on item open event handler
	'onItemSelect':'itemSelectHandler' // on item select event handler	
	
	// make sure there is no comma after the last key-value pair
};

function itemSelectHandler (o_item) { 
	// open the current node 
	o_item.open(o_item.n_state & 8) 
	// proceed to default handler 
	return true; 
}	
function onItemOpenHandler (o_item) {
	// get current block
	var a_curblock = o_item.o_parent.a_children;
	// close all nodes except current
	for (var i = 0; i < a_curblock.length; i++)
		if (a_curblock[i].n_state & 48 && a_curblock[i] != o_item)
			a_curblock[i].open(true);
	return true;
}
