
function officeUpdateView(node, active, selected) {

	var _image = DMAPI.getElement(node, "Arrow");
	if(_image)
		_image.src = DMAPI.getValue(node, DMAPI.isInPopupLoop(node) ? "HArrowImage" : "HArrowImage2");
	
	if(DMAPI.getNonSelectable(node))
		return;
		
	_image = DMAPI.getElement(node,"Image");
	if(_image)
		_image.src = DMAPI.getValue(node, active ? "ActiveImage" : "Image");
	
}

function officeResolveValue(node, _name, active, selected) {
	if((DMAPI.getNonSelectable(node) && DMAPI.isLeaf(node)))
		active = false;
	if(_name == "TopLevelArrowImage")
		_name =	DMAPI.isInPopupLoop(node) ? "HArrowImage" : "HArrowImage2";
	else if(_name == "Image")
		_name = DMAPI.getDisabled(node) ? "DisabledImage" : (active ? "ActiveImage" : "Image");
	else if(_name == "ArrowImage" && !DMAPI.getParent(DMAPI.getParent(node)))
		_name = DMAPI.getLayout(DMAPI.getParent(node)) == 1 ? "HArrowImage" : "VArrowImage";
	else if(_name == "TopLevelBg" && active)
		return "";
	return DMAPI.getValue(node, _name);
}

function officeResolveCssClass(node, _name, active, selected) {

	if(node.CustomType == "Separator")
		return DMAPI.getValue(node, DMAPI.getParent(DMAPI.getParent(node)) ? "PopupSeparator" : "ItemSeparator");
	
	active = active || selected;
	
	if((DMAPI.getNonSelectable(node) && DMAPI.isLeaf(node)))
		active = false;

	var cssName;
	
	if(_name == "TopLevel")
		cssName = "TopLevel";
	else if(_name == "TopLevelContainer")
		cssName = "TopLevelContainer";
	else if(_name == "Popup")
		cssName = "Popup";
	else if(_name == "PopupContainer")
		cssName = "PopupContainer";
	else if(_name == "TopItem")
		cssName = DMAPI.getDisabled(node) ? "TopItemDisabled" : (DMAPI.isInPopupLoop(node) ? "TopItemExpanded" : (active ? "TopItemActive" : "TopItem"));
	else if(_name == "Item")
		cssName = DMAPI.getDisabled(node) ? (DMAPI.mode == "NN" ? "ItemDisabledNN" : "ItemDisabled") : (active ? "ItemActive" : (DMAPI.mode == "NN" ? "ItemNN" : (DMAPI.isInPopupLoop(node) ? "ItemExpanded" : "Item")));
	else 
		alert("unexpexted CSS class request [" + _name + "]");
		
	return DMAPI.getValue(node, cssName);
}


