/*********************************************************************************************************
								SUBMEMU
/*********************************************************************************************************/
	
	SUBMEMU_NAME = "SubMemu";
	SUBMEMU_VERSION = "2.0.0";
	SUBMEMU_AUTHOR = "Бутков Антон";
	SUBMEMU_COMPANY = "AmorPro Development Studio";
	SUBMEMU_CONTACT = "amorpro@mail.ru";
	SUBMEMU_DESCRIPTION = "Модуль для создания меню."
	Uses( typeof( FRAMEWORK_NAME ), 'Framework' );
	Uses( typeof( POSITION_NAME ), 'Position' );
	function Uses( type, moduleName ){
		if(type == "undefined") {
		
			window.alert( "Отсутствует модуль " + moduleName + ". Модуль " + SUBMEMU_NAME + 
				" (" + SUBMEMU_DESCRIPTION + ") " + " не работает." );			
		}
	}	
	var Timer;							
	var ActiveMenuCount=0;				
	var ActivemenuId=0;					
	var ActiveTimerCount=0;				
	var ActiveMenuCloseTimeDelay = 100	
	function ShowMenu( parentId, subMenuId ){
		InitializeEvents( parentId, subMenuId )
		DeleteTimer();
		if ( subMenuId!=ActivemenuId && ActivemenuId!=0 ) {
			HideMenu();
		}
		Show( subMenuId )
		ActivemenuId=subMenuId;		
		ActiveMenuCount=1;
		SetPositionRightOf( parentId, subMenuId );	
	}
	function InitializeEvents( parentId, subMenuId ){
		if ( EventIsEmpty( Element( subMenuId ).onmouseover )) {
			Element( subMenuId ).onmouseover = DeleteTimer;
		}
		if ( EventIsEmpty( Element( subMenuId ).onmouseout)){
			Element( subMenuId ).onmouseout = CreateTimer;
		}
		if( EventIsEmpty( Element( parentId ).onmouseout)){
			Element( parentId ).onmouseout = CreateTimer;	
		}
	}
	function HideMenu(){
		if (ActiveMenuCount!=0){
			Hide(ActivemenuId)
			ActiveMenuCount=0;
		}
	}	
	function CreateTimer(){
		Timer=setTimeout( 'HideMenu()', ActiveMenuCloseTimeDelay );
	}
	function DeleteTimer(){
		if ( ActiveTimerCount != 0 ) {
			clearTimeout(Timer);
		}
		else{
			ActiveTimerCount=1;
		}
	}
