// -----------------------------------------------------------------------------------
// Description: slideMenu functions written by Johan Janssens http://www.jinx.be
// version 1.3 - 04/04/2005
// NOTICE : this file requires hybridmenu.js
// Copyright 2004 - 2005 Johan Janssens, All rights reserved.
// This script may not be used or distributed without license
// -----------------------------------------------------------------------------------

slideMenuBar.minCPURes=15;slideMenuBar.aniLen=200;function slideMenuBar(id){this.base=hybridMenuBar;this.base(id)}slideMenuBar.prototype=new hybridMenuBar;slideMenuBar.prototype.addMenu=function(node,id){if(node.getElementsByTagName('UL').length){this.menus[id]=new slideMenu(node,id,this.id)}};function slideMenu(node,id,parent){this.base=hybridMenu;this.base(node,id,parent);this.aniTimer=false;this.startTime=0;this.dirType="-";this.initSlideMenu(node);this.endSlide()}slideMenu.prototype=new hybridMenu;slideMenu.prototype.initSlideMenu=function(node){this.initHybridMenu(node);this.height=this.node.offsetHeight;this.outPos=document.getElementById(this.parent).offsetHeight;this.homePos=eval(this.outPos+this.dirType+this.height);this.accelConst=(this.outPos-this.homePos)/slideMenuBar.aniLen/slideMenuBar.aniLen};slideMenu.prototype.show=function(){if(!this.aniTimer)this.startSlide(true)};slideMenu.prototype.startSlide=function(open){this.open=open;if(this.open)this.setVisibility(true);this.startTime=(new Date()).getTime();this.aniTimer=window.setInterval("slide('"+this.id+"','"+this.parent+"')",slideMenuBar.minCPURes)};slideMenu.prototype.slide=function(){var elapsed=(new Date()).getTime()-this.startTime;if(elapsed>slideMenuBar.aniLen)this.endSlide();else{var d=Math.round(Math.pow(slideMenuBar.aniLen-elapsed,2)*this.accelConst);if(this.open&&this.dirType=="-")d=this.outPos-d;else if(!this.open&&this.dirType=="-")d=this.homePos+d;this.moveTo(d)}};slideMenu.prototype.endSlide=function(){this.aniTimer=window.clearInterval(this.aniTimer);if(!this.open)this.setVisibility(false);this.moveTo(this.open?this.outPos:this.homePos);if((this.open&&!this.over)||(!this.open&&this.over)){this.startSlide(this.over)}};slideMenu.prototype.hide=function(){if(!this.aniTimer)this.startSlide(false)};slideMenu.prototype.moveTo=function(p){this.node.style.top=p+"px";var clipT=-p+this.outPos;var clipR=this.node.style.width;this.node.style.clip="rect("+clipT+"px auto auto 0)"};slide=function(id,parent){var menus=(hybridMenuBar.Registry[parent]).getMenus();var menu=menus[id];menu.slide()};new slideMenuBar("dropdown");