
function k2UpdateView(node, active, selected) {
	
	var _image = DMAPI.getElement(node,"ArrowImage");
	if(_image) {
		var p = DMAPI.getParent(node);
		if(!p)
			return;
		if(!DMAPI.getParent(p))
			_image.src = DMAPI.getValue(node, DMAPI.getLayout(p) == 1 && DMAPI.isInPopupLoop(node) ? "ArrowImage3" : "ArrowImage");
		else
			_image.src = DMAPI.getValue(node, active ? "ArrowImage2" : "ArrowImage");
	}

	if(DMAPI.getNonSelectable(node) && DMAPI.isLeaf(node))
		return;

	_image = DMAPI.getElement(node,"Image");
	if(_image)
		_image.src = DMAPI.getValue(node, active ? "ActiveImage" : "Image");
}

function k2ResolveValue(node, _name, active, selected) {
	if(_name == "itemAttrs")
		return "";
	if(_name == "Image" && !DMAPI.getNonSelectable(node))
		_name = active ? "ActiveImage" : "Image"
	return DMAPI.getValue(node, _name);
}

function k2ResolveCssClass(node, _name, active, selected) {

	if(DMAPI.getCustomType(node) == "Separator")
		return DMAPI.getValue(node, "ItemSeparator");
	
	if(DMAPI.getNonSelectable(node) && DMAPI.isLeaf(node))
		active = false;
		
	var cssName;
	
	if(_name == "TopLevel")
		cssName = "TopLevel";
	else if(_name == "Popup")
		cssName = "Popup";
	else if(_name == "TopLevelContainer")
		cssName = "TopLevelContainer";
	else if(_name == "PopupContainer")
		cssName = "PopupContainer";
	else if(_name == "TopItem")
		cssName = DMAPI.getDisabled(node) ? "TopItemDisabled" : (DMAPI.isInPopupLoop(node) ? "TopItemExpanded" : (active ? (DMAPI.mode == "NN" ? "ItemActive" : "TopItemActive") : (selected ? "TopItemSelected" : "TopItem")));
	else if(_name == "Item")
		cssName = DMAPI.getDisabled(node) ? "ItemDisabled" : (active ? "ItemActive" : (selected ? "ItemSelected" : "Item"));
	else 
		alert("unexpexted CSS class request [" + _name + "]");
		
	return DMAPI.getValue(node, cssName);
}



