X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/6e39d509471fe9b4e2660e0d1631b350d0c66f40..6a7e4474cba9d8be4b2ec445e10f1691f7277c50:/adapter/yui/ext-yui-adapter-debug.js diff --git a/adapter/yui/ext-yui-adapter-debug.js b/adapter/yui/ext-yui-adapter-debug.js index 1cc90ad8..d764503a 100644 --- a/adapter/yui/ext-yui-adapter-debug.js +++ b/adapter/yui/ext-yui-adapter-debug.js @@ -1,6 +1,6 @@ /*! - * Ext JS Library 3.1.0 - * Copyright(c) 2006-2009 Ext JS, LLC + * Ext JS Library 3.2.0 + * Copyright(c) 2006-2010 Ext JS, Inc. * licensing@extjs.com * http://www.extjs.com/license */ @@ -19,7 +19,7 @@ Ext = { * The version of the framework * @type String */ - version : '3.1.0' + version : '3.2.0' }; /** @@ -53,7 +53,7 @@ Ext.apply = function(o, c, defaults){ DOC = document, isStrict = DOC.compatMode == "CSS1Compat", isOpera = check(/opera/), - isChrome = check(/chrome/), + isChrome = check(/\bchrome\b/), isWebKit = check(/webkit/), isSafari = !isChrome && check(/safari/), isSafari2 = isSafari && check(/applewebkit\/4/), // unique to Safari 2 @@ -161,7 +161,11 @@ Ext.apply = function(o, c, defaults){ * @return {String} The generated Id. */ id : function(el, prefix){ - return (el = Ext.getDom(el) || {}).id = el.id || (prefix || "ext-gen") + (++idSeed); + el = Ext.getDom(el, true) || {}; + if (!el.id) { + el.id = (prefix || "ext-gen") + (++idSeed); + } + return el.id; }, /** @@ -404,7 +408,7 @@ Ext.urlDecode("foo=1&bar=2&bar=3&bar=4", false); // returns {foo: "1", bar: ["2" } //NodeList has an item and length property //IXMLDOMNodeList has nextNode method, needs to be checked first. - return ((v.nextNode || v.item) && Ext.isNumber(v.length)); + return ((typeof v.nextNode != 'undefined' || v.item) && Ext.isNumber(v.length)); }, /** @@ -484,6 +488,8 @@ Ext.urlDecode("foo=1&bar=2&bar=3&bar=4", false); // returns {foo: "1", bar: ["2" /** * Return the dom node for the passed String (id), dom node, or Ext.Element. + * Optional 'strict' flag is needed for IE since it can return 'name' and + * 'id' elements by using getElementById. * Here are some examples: *

 // gets dom node based on id
@@ -503,11 +509,29 @@ function(el){
          * @param {Mixed} el
          * @return HTMLElement
          */
-        getDom : function(el){
+        getDom : function(el, strict){
             if(!el || !DOC){
                 return null;
             }
-            return el.dom ? el.dom : (Ext.isString(el) ? DOC.getElementById(el) : el);
+            if (el.dom){
+                return el.dom;
+            } else {
+                if (Ext.isString(el)) {
+                    var e = DOC.getElementById(el);
+                    // IE returns elements with the 'name' and 'id' attribute.
+                    // we do a strict check to return the element with only the id attribute
+                    if (e && isIE && strict) {
+                        if (el == e.getAttribute('id')) {
+                            return e;
+                        } else {
+                            return null;
+                        }
+                    }
+                    return e;
+                } else {
+                    return el;
+                }
+            }
         },
 
         /**
@@ -641,7 +665,7 @@ function(el){
          * @return {Boolean}
          */
         isElement : function(v) {
-            return !!v && v.tagName;
+            return v ? !!v.tagName : false;
         },
 
         /**
@@ -1050,7 +1074,7 @@ Ext.apply(Ext, function(){
          * @return {Number} Value, if numeric, else defaultValue
          */
         num : function(v, defaultValue){
-            v = Number(Ext.isEmpty(v) || Ext.isBoolean(v) ? NaN : v);
+            v = Number(Ext.isEmpty(v) || Ext.isArray(v) || Ext.isBoolean(v) || (Ext.isString(v) && v.trim().length == 0) ? NaN : v);
             return isNaN(v) ? defaultValue : v;
         },
 
@@ -1178,9 +1202,9 @@ ImageComponent = Ext.extend(Ext.BoxComponent, {
     }
 });
          * 
- * @param {Object} The destination object. - * @param {Object} The source object. - * @param {Array/String} Either an Array of property names, or a comma-delimited list + * @param {Object} dest The destination object. + * @param {Object} source The source object. + * @param {Array/String} names Either an Array of property names, or a comma-delimited list * of property names to copy. * @return {Object} The modified object. */ @@ -1324,7 +1348,7 @@ ImageComponent = Ext.extend(Ext.BoxComponent, { * @return {Number} The mean. */ mean : function(arr){ - return Ext.sum(arr) / arr.length; + return arr.length > 0 ? Ext.sum(arr) / arr.length : undefined; }, /** @@ -1380,7 +1404,7 @@ Ext.invoke(Ext.query("p"), "getAttribute", "id"); * * @param {Array|NodeList} arr The Array of items to invoke the method on. * @param {String} methodName The method name to invoke. - * @param {Anything} ... Arguments to send into the method invocation. + * @param {...*} args Arguments to send into the method invocation. * @return {Array} The results of invoking the method on each item in the array. */ invoke : function(arr, methodName){ @@ -1704,6 +1728,7 @@ Ext.TaskMgr.start({ }); * + *

See the {@link #start} method for details about how to configure a task object.

* Also see {@link Ext.util.DelayedTask}. * * @constructor @@ -1775,21 +1800,25 @@ Ext.util.TaskRunner = function(interval){ /** * Starts a new task. * @method start - * @param {Object} task A config object that supports the following properties:

+ *

Before each invocation, Ext injects the property taskRunCount into the task object so + * that calculations based on the repeat count can be performed.

* @return {Object} The task */ this.start = function(task){ @@ -1843,6 +1872,7 @@ var task = { } Ext.TaskMgr.start(task); + *

See the {@link #start} method for details about how to configure a task object.

* @singleton */ Ext.TaskMgr = new Ext.util.TaskRunner();if(typeof YAHOO == "undefined"){