
function SKMenu(oProps){
this.props=oProps;
this.menuItems=[];
this.menuItemsIndexId=[];
this.menuItemsCount=0;
this.addMenuItem=function(oMIProps){
 this.menuItemsCount++;
 this.menuItems[oMIProps.id]=new SKMenuItem(this.props.id,oMIProps,this.menuItemsCount);
 this.menuItemsIndexId[this.menuItems[oMIProps.id].menuItemIndex]=oMIProps.id;
}
this.hideSubMenus=function(){
 for(var i in this.menuItems){
 this.menuItems[i].hideSubMenu();
}
}
this.print=function(){
if(this.menuItemsCount==0){
 return;
}
var sMenuItemsHTML='';
for(var i in this.menuItems){
 sMenuItemsHTML+=this.menuItems[i].getHTML();
}
var sMenuTemplate=document.getElementById(SK_MENU_TMPL_PREF+this.props.id).value;
var oCommonProps={
 menuitems : sMenuItemsHTML
}
for(var i in this.props.tmpl_props){
 oCommonProps[i]=this.props.tmpl_props[i];
}
var sMenuHTML=sMenuTemplate.supplant(oCommonProps);
document.getElementById(SK_MENU_CONTAINER_PREF+this.props.id).innerHTML=sMenuHTML;
for(var i in this.menuItems){
 this.menuItems[i].onMenuPrint();
 this.menuItems[i].updateCurrentState();
}
}
this.getMenuItemById=function(sID){
 return this.menuItems[sID];
}
this.getMenuItemByIndex=function(iMIIndex){
 if(!this.menuItemsIndexId[iMIIndex]){
 return null;
}
 return this.getMenuItemById(this.menuItemsIndexId[iMIIndex])
}
 var self=this;
}