Alien-Web-ExtJS-V3
view release on metacpan or search on metacpan
share/docs/source/Ext.html view on Meta::CPAN
isOpera = check(/opera/),
isChrome = check(/\bchrome\b/),
isWebKit = check(/webkit/),
isSafari = !isChrome && check(/safari/),
isSafari2 = isSafari && check(/applewebkit\/4/), // unique to Safari 2
isSafari3 = isSafari && check(/version\/3/),
isSafari4 = isSafari && check(/version\/4/),
isIE = !isOpera && check(/msie/),
isIE7 = isIE && ((check(/msie 7/) && docMode != 8 && docMode != 9 && docMode != 10) || docMode == 7),
isIE8 = isIE && ((check(/msie 8/) && docMode != 7 && docMode != 9 && docMode != 10) || docMode == 8),
isIE9 = isIE && ((check(/msie 9/) && docMode != 7 && docMode != 8 && docMode != 10) || docMode == 9),
isIE10 = isIE && ((check(/msie 10/) && docMode != 7 && docMode != 8 && docMode != 9) || docMode == 10),
isIE6 = isIE && check(/msie 6/),
isIE9m = isIE && (isIE6 || isIE7 || isIE8 || isIE9),
isGecko = !isWebKit && check(/gecko/),
isGecko2 = isGecko && check(/rv:1\.8/),
isGecko3 = isGecko && check(/rv:1\.9/),
isBorderBox = isIE9m && !isStrict,
isWindows = check(/windows|win32/),
isMac = check(/macintosh|mac os x/),
isAir = check(/adobeair/),
isLinux = check(/linux/),
isSecure = /^https/i.test(window.location.protocol),
noArgs = [],
nonEnumerables = [],
emptyFn = Ext.emptyFn,
t = Ext.apply({}, {
constructor: emptyFn,
toString: emptyFn,
valueOf: emptyFn
}),
callOverrideParent = function () {
var method = callOverrideParent.caller.caller; // skip callParent (our caller)
return method.$owner.prototype[method.$name].apply(this, arguments);
};
if (t.constructor !== emptyFn) {
nonEnumerables.push('constructor');
}
if (t.toString !== emptyFn) {
nonEnumerables.push('toString');
}
if (t.valueOf !== emptyFn) {
nonEnumerables.push('valueOf');
}
if (!nonEnumerables.length) {
nonEnumerables = null;
}
// Create the abstract Base class to provide an empty constructor and callParent implementations
function Base () {
//
}
Ext.apply(Base, {
$isClass: true,
callParent: function (args) {
var method;
// This code is intentionally inlined for the least number of debugger stepping
return (method = this.callParent.caller) && (method.$previous ||
((method = method.$owner ? method : method.caller) &&
method.$owner.superclass.self[method.$name])).apply(this, args || noArgs);
}
});
Base.prototype = {
constructor: function() {
},
callParent: function(args) {
// NOTE: this code is deliberately as few expressions (and no function calls)
// as possible so that a debugger can skip over this noise with the minimum number
// of steps. Basically, just hit Step Into until you are where you really wanted
// to be.
var method,
superMethod = (method = this.callParent.caller) && (method.$previous ||
((method = method.$owner ? method : method.caller) &&
method.$owner.superclass[method.$name]));
return superMethod.apply(this, args || noArgs);
}
};
// remove css image flicker
if(isIE6){
try{
DOC.execCommand("BackgroundImageCache", false, true);
}catch(e){}
}
Ext.apply(Ext, {
<span id='Ext-property-SSL_SECURE_URL'> /**
</span> * URL to a blank file used by Ext when in secure mode for iframe src and onReady src to prevent
* the IE insecure content warning (<tt>'about:blank'</tt>, except for IE in secure mode, which is <tt>'javascript:""'</tt>).
* @type String
*/
SSL_SECURE_URL : isSecure && isIE ? 'javascript:""' : 'about:blank',
<span id='Ext-property-isStrict'> /**
</span> * True if the browser is in strict (standards-compliant) mode, as opposed to quirks mode
* @type Boolean
*/
isStrict : isStrict,
<span id='Ext-property-isSecure'> /**
</span> * True if the page is running over SSL
* @type Boolean
*/
isSecure : isSecure,
<span id='Ext-property-isReady'> /**
</span> * True when the document is fully initialized and ready for action
* @type Boolean
*/
isReady : false,
<span id='Ext-property-enableFx'> /**
</span> * True if the {@link Ext.Fx} Class is available
* @type Boolean
* @property enableFx
*/
<span id='Ext-property-enableForcedBoxModel'> /**
</span> * HIGHLY EXPERIMENTAL
* True to force css based border-box model override and turning off javascript based adjustments. This is a
* runtime configuration and must be set before onReady.
* @type Boolean
*/
enableForcedBoxModel : false,
<span id='Ext-property-enableGarbageCollector'> /**
</span> * True to automatically uncache orphaned Ext.Elements periodically (defaults to true)
* @type Boolean
*/
enableGarbageCollector : true,
share/docs/source/Ext.html view on Meta::CPAN
<span id='Ext-method-override'> /**
</span> * Overrides members of the specified `target` with the given values.
*
* If the `target` is a function, it is assumed to be a constructor and the contents
* of `overrides` are applied to its `prototype` using {@link Ext#apply Ext.apply}.
*
* If the `target` is an instance of a class created using {@link #define},
* the `overrides` are applied to only that instance. In this case, methods are
* specially processed to allow them to use {@link Ext.Base#callParent}.
*
* var panel = new Ext.Panel({ ... });
*
* Ext.override(panel, {
* initComponent: function () {
* // extra processing...
*
* this.callParent();
* }
* });
*
* If the `target` is none of these, the `overrides` are applied to the `target`
* using {@link Ext#apply Ext.apply}.
*
* Please refer to {@link Ext#define Ext.define} for further details.
*
* @param {Object} target The target to override.
* @param {Object} overrides The properties to add or replace on `target`.
* @method override
*/
override: function (target, overrides) {
var proto, statics;
if (overrides) {
if (target.$isClass) {
statics = overrides.statics;
if (statics) {
delete overrides.statics;
}
Ext.addMembers(target, target.prototype, overrides, true);
if (statics) {
Ext.addMembers(target, target, statics);
}
} else if (typeof target == 'function') {
proto = target.prototype;
Ext.apply(proto, overrides);
if(Ext.isIE && overrides.hasOwnProperty('toString')){
proto.toString = overrides.toString;
}
} else {
var owner = target.self,
name, value;
if (owner && owner.$isClass) {
for (name in overrides) {
if (overrides.hasOwnProperty(name)) {
value = overrides[name];
if (typeof value == 'function') {
//<debug>
if (owner.$className) {
value.displayName = owner.$className + '#' + name;
}
//</debug>
value.$name = name;
value.$owner = owner;
value.$previous = target.hasOwnProperty(name)
? target[name] // already hooked, so call previous hook
: callOverrideParent; // calls by name on prototype
}
target[name] = value;
}
}
} else {
Ext.apply(target, overrides);
if (!target.constructor.$isClass) {
target.constructor.prototype.callParent = Base.prototype.callParent;
target.constructor.callParent = Base.callParent;
}
}
}
}
},
<span id='Ext-method-namespace'> /**
</span> * Creates namespaces to be used for scoping variables and classes so that they are not global.
* Specifying the last node of a namespace implicitly creates all other nodes. Usage:
* <pre><code>
Ext.namespace('Company', 'Company.data');
Ext.namespace('Company.data'); // equivalent and preferable to above syntax
Company.Widget = function() { ... }
Company.data.CustomStore = function(config) { ... }
</code></pre>
* @param {String} namespace1
* @param {String} namespace2
* @param {String} etc
* @return {Object} The namespace object. (If multiple arguments are passed, this will be the last namespace created)
* @method namespace
*/
namespace : function(){
var len1 = arguments.length,
i = 0,
len2,
j,
main,
ns,
sub,
current;
for(; i < len1; ++i) {
main = arguments[i];
ns = arguments[i].split('.');
current = window[ns[0]];
if (current === undefined) {
current = window[ns[0]] = {};
}
sub = ns.slice(1);
len2 = sub.length;
for(j = 0; j < len2; ++j) {
current = current[sub[j]] = current[sub[j]] || {};
}
( run in 0.509 second using v1.01-cache-2.11-cpan-119454b85a5 )