-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>The source code</title>
- <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
- <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
-</head>
-<body onload="prettyPrint();">
- <pre class="prettyprint lang-js">/*!
- * Ext JS Library 3.2.2
- * Copyright(c) 2006-2010 Ext JS, Inc.
- * licensing@extjs.com
- * http://www.extjs.com/license
- */
-(function(){
- var doc = document,
- isCSS1 = doc.compatMode == "CSS1Compat",
- MAX = Math.max,
- ROUND = Math.round,
- PARSEINT = parseInt;
-
- Ext.lib.Dom = {
- isAncestor : function(p, c) {
- var ret = false;
-
- p = Ext.getDom(p);
- c = Ext.getDom(c);
- if (p && c) {
- if (p.contains) {
- return p.contains(c);
- } else if (p.compareDocumentPosition) {
- return !!(p.compareDocumentPosition(c) & 16);
- } else {
- while (c = c.parentNode) {
- ret = c == p || ret;
- }
- }
- }
- return ret;
- },
-
- getViewWidth : function(full) {
- return full ? this.getDocumentWidth() : this.getViewportWidth();
- },
-
- getViewHeight : function(full) {
- return full ? this.getDocumentHeight() : this.getViewportHeight();
- },
-
- getDocumentHeight: function() {
- return MAX(!isCSS1 ? doc.body.scrollHeight : doc.documentElement.scrollHeight, this.getViewportHeight());
- },
-
- getDocumentWidth: function() {
- return MAX(!isCSS1 ? doc.body.scrollWidth : doc.documentElement.scrollWidth, this.getViewportWidth());
- },
-
- getViewportHeight: function(){
- return Ext.isIE ?
- (Ext.isStrict ? doc.documentElement.clientHeight : doc.body.clientHeight) :
- self.innerHeight;
- },
-
- getViewportWidth : function() {
- return !Ext.isStrict && !Ext.isOpera ? doc.body.clientWidth :
- Ext.isIE ? doc.documentElement.clientWidth : self.innerWidth;
- },
-
- getY : function(el) {
- return this.getXY(el)[1];
- },
-
- getX : function(el) {
- return this.getXY(el)[0];
- },
-
- getXY : function(el) {
- var p,
- pe,
- b,
- bt,
- bl,
- dbd,
- x = 0,
- y = 0,
- scroll,
- hasAbsolute,
- bd = (doc.body || doc.documentElement),
- ret = [0,0];
-
- el = Ext.getDom(el);
-
- if(el != bd){
- if (el.getBoundingClientRect) {
- b = el.getBoundingClientRect();
- scroll = fly(document).getScroll();
- ret = [ROUND(b.left + scroll.left), ROUND(b.top + scroll.top)];
- } else {
- p = el;
- hasAbsolute = fly(el).isStyle("position", "absolute");
-
- while (p) {
- pe = fly(p);
- x += p.offsetLeft;
- y += p.offsetTop;
-
- hasAbsolute = hasAbsolute || pe.isStyle("position", "absolute");
-
- if (Ext.isGecko) {
- y += bt = PARSEINT(pe.getStyle("borderTopWidth"), 10) || 0;
- x += bl = PARSEINT(pe.getStyle("borderLeftWidth"), 10) || 0;
-
- if (p != el && !pe.isStyle('overflow','visible')) {
- x += bl;
- y += bt;
- }
- }
- p = p.offsetParent;
- }
-
- if (Ext.isSafari && hasAbsolute) {
- x -= bd.offsetLeft;
- y -= bd.offsetTop;
- }
-
- if (Ext.isGecko && !hasAbsolute) {
- dbd = fly(bd);
- x += PARSEINT(dbd.getStyle("borderLeftWidth"), 10) || 0;
- y += PARSEINT(dbd.getStyle("borderTopWidth"), 10) || 0;
- }
-
- p = el.parentNode;
- while (p && p != bd) {
- if (!Ext.isOpera || (p.tagName != 'TR' && !fly(p).isStyle("display", "inline"))) {
- x -= p.scrollLeft;
- y -= p.scrollTop;
- }
- p = p.parentNode;
- }
- ret = [x,y];
- }
- }
- return ret
- },
-
- setXY : function(el, xy) {
- (el = Ext.fly(el, '_setXY')).position();
-
- var pts = el.translatePoints(xy),
- style = el.dom.style,
- pos;
-
- for (pos in pts) {
- if(!isNaN(pts[pos])) style[pos] = pts[pos] + "px"
- }
- },
-
- setX : function(el, x) {
- this.setXY(el, [x, false]);
- },
-
- setY : function(el, y) {
- this.setXY(el, [false, y]);
- }
- };
-})();</pre>
-</body>
-</html>
\ No newline at end of file