-<html>\r
-<head>\r
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> \r
- <title>The source code</title>\r
- <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />\r
- <script type="text/javascript" src="../resources/prettify/prettify.js"></script>\r
-</head>\r
-<body onload="prettyPrint();">\r
- <pre class="prettyprint lang-js">
+<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
+ */
// for old browsers
window.undefined = window.undefined;
-<div id="cls-Ext"></div>/**
+/**
* @class Ext
* Ext core utilities and functions.
* @singleton
* The version of the framework
* @type String
*/
- version : '3.1.0'
+ version : '3.2.2',
+ versionDetail : {
+ major: 3,
+ minor: 2,
+ patch: 2
+ }
};
<div id="method-Ext-apply"></div>/**
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
* @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;
},
<div id="method-Ext-extend"></div>/**
var oc = Object.prototype.constructor;
return function(sb, sp, overrides){
- if(Ext.isObject(sp)){
+ if(typeof sp == 'object'){
overrides = sp;
sp = sb;
sb = overrides.constructor != oc ? overrides.constructor : function(){sp.apply(this, arguments);};
} :
function(a, i, j){
return Array.prototype.slice.call(a, i || 0, j || a.length);
- }
+ };
}(),
isIterable : function(v){
}
//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));
},
<div id="method-Ext-each"></div>/**
if(Ext.isIterable(obj)){
Ext.each(obj, fn, scope);
return;
- }else if(Ext.isObject(obj)){
+ }else if(typeof obj == 'object'){
for(var prop in obj){
if(obj.hasOwnProperty(prop)){
if(fn.call(scope || obj, prop, obj[prop], obj) === false){
<div id="method-Ext-getDom"></div>/**
* 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:
* <pre><code>
// gets dom node based on id
* @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 (typeof el == 'string') {
+ 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;
+ }
+ }
},
<div id="method-Ext-getBody"></div>/**
getBody : function(){
return Ext.get(DOC.body || DOC.documentElement);
},
+
+ <div id="method-Ext-getHead"></div>/**
+ * Returns the current document body as an {@link Ext.Element}.
+ * @return Ext.Element The document body
+ */
+ getHead : function() {
+ var head;
+
+ return function() {
+ if (head == undefined) {
+ head = Ext.get(DOC.getElementsByTagName("head")[0]);
+ }
+
+ return head;
+ };
+ }(),
<div id="prop-Ext-"></div>/**
* Removes a DOM node from the document.
d.innerHTML = '';
delete Ext.elCache[n.id];
}
- }
+ };
}() : function(n){
if(n && n.parentNode && n.tagName != 'BODY'){
(Ext.enableNestedListenerRemoval) ? Ext.EventManager.purgeElement(n, true) : Ext.EventManager.removeAll(n);
* @return {Boolean}
*/
isElement : function(v) {
- return !!v && v.tagName;
+ return v ? !!v.tagName : false;
},
<div id="method-Ext-isDefined"></div>/**
Ext.elCache = {};
-<div id="cls-Function"></div>/**
+/**
* @class Function
* These functions are available on every Function object (any JavaScript function).
*/
}
});
-<div id="cls-String"></div>/**
+/**
* @class String
* These functions are available on every String object.
*/
return this;
}
});
-</pre> \r
-</body>\r
+</pre>
+</body>
</html>
\ No newline at end of file