/* Copyright (c) 2008, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.net/yui/license.txt version: 3.0.0pr1 */ YUI.add("dom-screen",function(E){var L="offsetTop",T="documentElement",K="compatMode",D="offsetLeft",W="offsetParent",N="position",S="fixed",Z="relative",M="left",Q="top",X="scrollLeft",U="scrollTop",V="BackCompat",P="medium",O="height",H="width",F="borderLeftWidth",G="borderTopWidth",C="getBoundingClientRect",B="getComputedStyle",a=/^t(?:able|d|h)$/i;E.mix(E.DOM,{winHeight:function(b){var Y=E.DOM._getWinSize(b)[O];return Y;},winWidth:function(b){var Y=E.DOM._getWinSize(b)[H];return Y;},docHeight:function(b){var Y=E.DOM._getDocSize(b)[O];return Math.max(Y,E.DOM._getWinSize(b)[O]);},docWidth:function(b){var Y=E.DOM._getDocSize(b)[H];return Math.max(Y,E.DOM._getWinSize(b)[H]);},docScrollX:function(Y){var b=E.DOM._getDoc();return Math.max(b[T][X],b.body[X]);},docScrollY:function(Y){var b=E.DOM._getDoc();return Math.max(b[T][U],b.body[U]);},getXY:function(){if(document[T][C]){return function(d){if(!d){return false;}var e=E.DOM.docScrollX(d),b=E.DOM.docScrollY(d),f=d[C](),j=E.DOM._getDoc(d),k=[Math.floor(f[M]),Math.floor(f[Q])];if(E.UA.ie){var i=2,h=2,g=j[K],Y=E.DOM[B](j[T],F),c=E.DOM[B](j[T],G);if(E.UA.ie===6){if(g!==V){i=0;h=0;}}if((g==V)){if(Y!==P){i=parseInt(Y,10);}if(c!==P){h=parseInt(c,10);}}k[0]-=i;k[1]-=h;}if((b||e)){k[0]+=e;k[1]+=b;}k[0]=Math.floor(k[0]);k[1]=Math.floor(k[1]);return k;};}else{return function(b){var d=[b[D],b[L]],Y=b,f=((E.UA.gecko||(E.UA.webkit>519))?true:false);while((Y=Y[W])){d[0]+=Y[D];d[1]+=Y[L];if(f){d=E.DOM._calcBorders(Y,d);}}if(E.DOM.getStyle(b,N)!=S){Y=b;var c,e;while((Y=Y.parentNode)){c=Y[U];e=Y[X];if(E.UA.gecko&&(E.DOM.getStyle(Y,"overflow")!=="visible")){d=E.DOM._calcBorders(Y,d);}if(c||e){d[0]-=e;d[1]-=c;}}d[0]+=E.DOM.docScrollX(b);d[1]+=E.DOM.docScrollY(b);}else{if(E.UA.opera){d[0]-=E.DOM.docScrollX(b);d[1]-=E.DOM.docScrollY(b);}else{if(E.UA.webkit||E.UA.gecko){d[0]+=E.DOM.docScrollX(b);d[1]+=E.DOM.docScrollY(b);}}}d[0]=Math.floor(d[0]);d[1]=Math.floor(d[1]);return d;};}}(),getX:function(Y){return E.DOM.getXY(Y)[0];},getY:function(Y){return E.DOM.getXY(Y)[1];},setXY:function(b,e,h){var g=E.DOM.getStyle(b,N),c=E.DOM.setStyle,f=[parseInt(E.DOM[B](b,M),10),parseInt(E.DOM[B](b,Q),10)];if(g=="static"){g=Z;c(b,N,g);}var d=E.DOM.getXY(b);if(d===false){return false;}if(isNaN(f[0])){f[0]=(g==Z)?0:b[D];}if(isNaN(f[1])){f[1]=(g==Z)?0:b[L];}if(e[0]!==null){c(b,M,e[0]-d[0]+f[0]+"px");}if(e[1]!==null){c(b,Q,e[1]-d[1]+f[1]+"px");}if(!h){var Y=E.DOM.getXY(b);if((e[0]!==null&&Y[0]!=e[0])||(e[1]!==null&&Y[1]!=e[1])){E.DOM.setXY(b,e,true);}}},setX:function(b,Y){return E.DOM.setXY(b,[Y,null]);},setY:function(Y,b){return E.DOM.setXY(Y,[null,b]);},_calcBorders:function(c,d){var b=parseInt(E.DOM[B](c,G),10)||0,Y=parseInt(E.DOM[B](c,F),10)||0;if(E.UA.gecko){if(a.test(c.tagName)){b=0;Y=0;}}d[0]+=Y;d[1]+=b;return d;},_getWinSize:function(d){var f=E.DOM._getDoc(),e=f.defaultView||f.parentWindow,g=f[K],c=e.innerHeight,b=e.innerWidth,Y=f[T];if(g&&!E.UA.opera){if(g!="CSS1Compat"){Y=f.body;}c=Y.clientHeight;b=Y.clientWidth;}return{height:c,width:b};},_getDocSize:function(b){var c=E.DOM._getDoc(),Y=c[T];if(c[K]!="CSS1Compat"){Y=c.body;}return{height:Y.scrollHeight,width:Y.scrollWidth};}});var I="offsetWidth",A="offsetHeight",R="tagName";var J=function(e,d){var f=Math.max(e.top,d.top),g=Math.min(e.right,d.right),Y=Math.min(e.bottom,d.bottom),c=Math.max(e.left,d.left);return{top:f,bottom:Y,left:c,right:g};};E.mix(E.DOM,{region:function(c){var Y=E.DOM.getXY(c),b=false;if(Y){b={"0":Y[0],"1":Y[1],top:Y[1],right:Y[0]+c[I],bottom:Y[1]+c[A],left:Y[0],height:c[A],width:c[I]};}return b;},intersect:function(c,Y,e){var b=e||E.DOM.region(c),d={};var g=Y;if(g[R]){d=E.DOM.region(g);}else{if(E.Lang.isObject(Y)){d=Y;}else{return false;}}var f=J(d,b);return{top:f.top,right:f.right,bottom:f.bottom,left:f.left,area:((f.bottom-f.top)*(f.right-f.left)),yoff:((f.bottom-f.top)),xoff:(f.right-f.left),inRegion:E.DOM.inRegion(c,Y,false,e)};},inRegion:function(d,Y,b,f){var e={},c=f||E.DOM.region(d);var h=Y;if(h[R]){e=E.DOM.region(h);}else{if(E.Lang.isObject(Y)){e=Y;}else{return false;}}if(b){return(c.left>=e.left&&c.right<=e.right&&c.top>=e.top&&c.bottom<=e.bottom);}else{var g=J(e,c);if(g.bottom>=g.top&&g.right>=g.left){return true;}else{return false;}}},inViewportRegion:function(b,Y,c){return E.DOM.inRegion(b,E.DOM.viewportRegion(b),Y,c);},viewportRegion:function(b){b=b||E.config.doc.documentElement;var Y={top:E.DOM.docScrollY(b),right:E.DOM.winWidth(b)+E.DOM.docScrollX(b),bottom:(E.DOM.docScrollY(b)+E.DOM.winHeight(b)),left:E.DOM.docScrollX(b)};return Y;}});},"3.0.0pr1",{skinnable:false,requires:["dom-base","dom-style"]});