OpenLayers.Control.ToolTips=OpenLayers.Class(OpenLayers.Control,{element:null,textColor:"black",bold:false,opacity:1,bgColor:"#FFFFFF",paddingValue:"2px",lastXy:null,html:"some text",evt:null,roundedCorner:false,shadow:false,initialize:function(a){var b=[];OpenLayers.Util.extend(this,a);OpenLayers.Control.prototype.initialize.apply(this,arguments)},destroy:function(){if(this.map){this.map.events.unregister('mousemove',this,this.redraw)}this.bgTtips.parentNode.removeChild(this.bgTtips);this.spanTx.parentNode.removeChild(this.bgTtips);OpenLayers.Control.prototype.destroy.apply(this,arguments)},draw:function(){OpenLayers.Control.prototype.draw.apply(this,arguments);this.bgTtips=OpenLayers.Util.createDiv("divBgTtips",null,null,null,"absolute",null,"hidden",this.opacity);this.bgText=document.createElement("div");this.bgTtips.style.zIndex="999";if(this.bold){this.bgText.style.fontWeight="bold"};this.bgTtips.style.padding="2px 5px 2px 5px";this.bgTtips.style.backgroundColor=this.bgColor;this.spanTx=OpenLayers.Util.createDiv("spanTx",null,null,null,"absolute",null,"hidden",1);this.spanTx.style.color=this.textColor;this.spanTx.style.zIndex="1000";this.spanTx.style.padding="2px 5px 2px 5px";this.spanTx.style.border="1px #C7C7C7 double";this.spanTx.style.backgroundColor=this.bgColor;if(this.bold){this.spanTx.style.fontWeight="bold"}if(this.shadow){this.bgTtips.style.backgroundColor="#6D6D6D";this.bgTtips.style.opacity=0.5;this.spanTx.style.opacity=1};if(this.mapid=='')this.mapid="map";document.getElementById(this.mapid).appendChild(this.spanTx);document.getElementById(this.mapid).appendChild(this.bgTtips);document.getElementById(this.bgTtips.id).appendChild(this.bgText);this.spanTx.style.display="none";this.bgTtips.style.display="none";this.marginPos=this.findXYMap(document.getElementById(this.map.div.id));this.map.events.register('mousemove',this,this.redraw)},show:function(a){this.redraw(this.pos);this.spanTx.innerHTML=a.html;this.bgText.innerHTML=a.html;this.bgText.style.visibility="hidden";this.spanTx.style.display="block";this.bgTtips.style.display="block"},hide:function(){this.spanTx.style.display="none";this.bgTtips.style.display="none"},findXYMap:function(a){var x=0,y=0,w=0;while(a!=null){x+=a.offsetLeft-a.scrollLeft;y+=a.offsetTop-a.scrollTop;a=a.offsetParent}return{x:x,y:y}},calculPosition:function(a){var b=null;var c=document.getElementById(this.map.div.id).offsetWidth+this.marginPos.x;var d=document.getElementById(this.map.div.id).offsetHeight+this.marginPos.y;var e=document.getElementById(this.bgTtips.id).offsetWidth+this.marginPos.x+a.xy.x+8;var f=document.getElementById(this.bgTtips.id).offsetHeight+this.marginPos.y+a.xy.y+8;if(e<c&&f<d){b="BL"}else if(e>c&&f<d){b="BR"}else if(e<c&&f>d){b="TR"}else if(e>c&&f>d){b="TL"}return(b)},setPosition:function(a,b,c){var d=this.calculPosition(a);switch(d){case"BL":this.spanTx.style.left=((a.xy.x+this.marginPos.x)+12)+"px";this.spanTx.style.top=((a.xy.y+this.marginPos.y)-18)+"px";if(!this.shadow){this.bgTtips.style.left=((a.xy.x+this.marginPos.x)+12)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)-18)+"px"}else{this.bgTtips.style.left=((a.xy.x+this.marginPos.x)+20)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)-10)+"px"}break;case"BR":this.spanTx.style.left=((a.xy.x+this.marginPos.x)-22-document.getElementById(this.spanTx.id).offsetWidth)+"px";this.spanTx.style.top=((a.xy.y+this.marginPos.y)-18)+"px";if(!this.shadow){this.bgTtips.style.left=((a.xy.x+this.marginPos.x)-22-document.getElementById(this.spanTx.id).offsetWidth)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)-18)+"px"}else{this.bgTtips.style.left=((a.xy.x+this.marginPos.x)-14-document.getElementById(this.spanTx.id).offsetWidth)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)-10)+"px"}break;case"TR":this.spanTx.style.left=((a.xy.x+this.marginPos.x)+12)+"px";this.spanTx.style.top=((a.xy.y+this.marginPos.y)-document.getElementById(this.spanTx.id).offsetHeight)+"px";if(!this.shadow){this.bgTtips.style.left=((a.xy.x+this.marginPos.x)+12)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)-document.getElementById(this.spanTx.id).offsetHeight)+"px"}else{this.bgTtips.style.left=((a.xy.x+this.marginPos.x)+20)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)+8-document.getElementById(this.spanTx.id).offsetHeight)+"px"}break;case"TL":this.spanTx.style.left=((a.xy.x+this.marginPos.x)-22-document.getElementById(this.spanTx.id).offsetWidth)+"px";this.spanTx.style.top=((a.xy.y+this.marginPos.y)-document.getElementById(this.spanTx.id).offsetHeight)+"px";if(!this.shadow){this.bgTtips.style.left=((a.xy.x+this.marginPos.x)-22-document.getElementById(this.spanTx.id).offsetWidth)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)-document.getElementById(this.spanTx.id).offsetHeight)+"px"}else{this.bgTtips.style.left=((a.xy.x+this.marginPos.x)-14-document.getElementById(this.spanTx.id).offsetWidth)+"px";this.bgTtips.style.top=((a.xy.y+this.marginPos.y)+8-document.getElementById(this.spanTx.id).offsetHeight)+"px"}break}},redraw:function(a){this.pos=a;this.setPosition(this.pos)},CLASS_NAME:"OpenLayers.Control.ToolTips"});    
