treenode.prototype.checkbox_check = function(){
	var i;
	this.oNodeCheckbox.state = 1;
	
	this.oNodeCheckbox.src = 'tree/check_full.gif';
	for(i=0;i<this.oNode.oNodeChilds.childNodes.length;i++){
		this.oNode.oNodeChilds.childNodes[i].obj.checkbox_check();
	}
}

treenode.prototype.toggleCheckbox = function(){
				
	if(this.oNodeCheckbox.state == 0 || this.oNodeCheckbox.state == 2){
		this.oNodeCheckbox.obj.checkbox_check();
	}else if(this.oNodeCheckbox.state == 1){
		this.oNodeCheckbox.src = 'tree/check_disabled.gif';
		for(i=0;i<this.oNode.oNodeChilds.childNodes.length;i++){
			this.oNode.oNodeChilds.childNodes[i].oNodeCheckbox.src = 'tree/check_disabled.gif';
			this.oNode.oNodeChilds.childNodes[i].oNodeCheckbox.state = 0;
		}
		this.oNodeCheckbox.state = 0;
	}
	
	// set parent
	var checkedChilds = 0;
	for(i=0;i<this.oNodeCheckbox.obj.parentNode.oNodeChilds.childNodes.length;i++){
		if(this.oNodeCheckbox.obj.parentNode.oNodeChilds.childNodes[i].oNodeCheckbox.state == 1){
			checkedChilds++;
		}
	}
	
	if(checkedChilds == 0){
		this.oNodeCheckbox.obj.parentNode.oNodeCheckbox.src = 'tree/check_disabled.gif';
		this.oNodeCheckbox.obj.parentNode.oNodeCheckbox.state = 0;
	}else if(checkedChilds == this.oNodeCheckbox.obj.parentNode.oNodeChilds.childNodes.length){
		this.oNodeCheckbox.obj.parentNode.oNodeCheckbox.src = 'tree/check_full.gif';
		this.oNodeCheckbox.obj.parentNode.oNodeCheckbox.state = 1;
	}else{
		this.oNodeCheckbox.obj.parentNode.oNodeCheckbox.src = 'tree/check_partial.gif';
		this.oNodeCheckbox.obj.parentNode.oNodeCheckbox.state = 2;
	}
	
	
}