X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/6746dc89c47ed01b165cc1152533605f97eb8e8d..HEAD:/docs/output/Ext.env.Browser.js diff --git a/docs/output/Ext.env.Browser.js b/docs/output/Ext.env.Browser.js index fbe948ca..d6ac0088 100644 --- a/docs/output/Ext.env.Browser.js +++ b/docs/output/Ext.env.Browser.js @@ -1,470 +1 @@ -Ext.data.JsonP.Ext_env_Browser({ - "allMixins": [ - - ], - "deprecated": null, - "docauthor": null, - "members": { - "cfg": [ - - ], - "method": [ - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-addStatics", - "shortDoc": "Add / override static properties of this class. ...", - "static": true, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - { - "type": "Object", - "optional": false, - "doc": "\n", - "name": "members" - } - ], - "name": "addStatics", - "owner": "Ext.Base", - "doc": "
Add / override static properties of this class.
\n\nExt.define('My.cool.Class', {\n ...\n});\n\nMy.cool.Class.addStatics({\n someProperty: 'someValue', // My.cool.Class.someProperty = 'someValue'\n method1: function() { ... }, // My.cool.Class.method1 = function() { ... };\n method2: function() { ... } // My.cool.Class.method2 = function() { ... };\n});\n
\n",
- "linenr": 388,
- "return": {
- "type": "Ext.Base",
- "doc": "this
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-callOverridden", - "shortDoc": "Call the original method that was previously overridden with Ext.Base.override\n\nExt.define('My.Cat', {\n constructo...", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - { - "type": "Array/Arguments", - "optional": false, - "doc": "The arguments, either an array or the arguments
object
Call the original method that was previously overridden with Ext.Base.override
\n\nExt.define('My.Cat', {\n constructor: function() {\n alert(\"I'm a cat!\");\n\n return this;\n }\n});\n\nMy.Cat.override({\n constructor: function() {\n alert(\"I'm going to be a cat!\");\n\n var instance = this.callOverridden();\n\n alert(\"Meeeeoooowwww\");\n\n return instance;\n }\n});\n\nvar kitty = new My.Cat(); // alerts \"I'm going to be a cat!\"\n // alerts \"I'm a cat!\"\n // alerts \"Meeeeoooowwww\"\n
\n",
- "linenr": 269,
- "return": {
- "type": "Mixed",
- "doc": "Returns the result after calling the overridden method
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": true, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-callParent", - "shortDoc": "Call the parent's overridden method. ...", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - { - "type": "Array/Arguments", - "optional": false, - "doc": "The arguments, either an array or the arguments
object\nfrom the current method, for example: this.callParent(arguments)
Call the parent's overridden method. For example:
\n\nExt.define('My.own.A', {\n constructor: function(test) {\n alert(test);\n }\n});\n\nExt.define('My.own.B', {\n extend: 'My.own.A',\n\n constructor: function(test) {\n alert(test);\n\n this.callParent([test + 1]);\n }\n});\n\nExt.define('My.own.C', {\n extend: 'My.own.B',\n\n constructor: function() {\n alert(\"Going to call parent's overriden constructor...\");\n\n this.callParent(arguments);\n }\n});\n\nvar a = new My.own.A(1); // alerts '1'\nvar b = new My.own.B(1); // alerts '1', then alerts '2'\nvar c = new My.own.C(2); // alerts \"Going to call parent's overriden constructor...\"\n // alerts '2', then alerts '3'\n
\n",
- "linenr": 124,
- "return": {
- "type": "Mixed",
- "doc": "Returns the result from the superclass' method
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-create", - "shortDoc": "Create a new instance of this Class. ...", - "static": true, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - - ], - "name": "create", - "owner": "Ext.Base", - "doc": "Create a new instance of this Class.
\n\nExt.define('My.cool.Class', {\n ...\n});\n\nMy.cool.Class.create({\n someConfig: true\n});\n
\n\nAll parameters are passed to the constructor of the class.
\n", - "linenr": 329, - "return": { - "type": "Object", - "doc": "the created instance.
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-createAlias", - "shortDoc": "Create aliases for existing prototype methods. ...", - "static": true, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - { - "type": "String/Object", - "optional": false, - "doc": "The new method name, or an object to set multiple aliases. See\nflexSetter
\n", - "name": "alias" - }, - { - "type": "String/Object", - "optional": false, - "doc": "The original method name
\n", - "name": "origin" - } - ], - "name": "createAlias", - "owner": "Ext.Base", - "doc": "Create aliases for existing prototype methods. Example:
\n\nExt.define('My.cool.Class', {\n method1: function() { ... },\n method2: function() { ... }\n});\n\nvar test = new My.cool.Class();\n\nMy.cool.Class.createAlias({\n method3: 'method1',\n method4: 'method2'\n});\n\ntest.method3(); // test.method1()\n\nMy.cool.Class.createAlias('method5', 'method3');\n\ntest.method5(); // test.method3() -> test.method1()\n
\n",
- "linenr": 648,
- "return": {
- "type": "void",
- "doc": "\n"
- },
- "html_filename": "Base3.html"
- },
- {
- "deprecated": null,
- "alias": null,
- "protected": false,
- "tagname": "method",
- "href": "Base3.html#Ext-Base-method-getName",
- "shortDoc": "Get the current class' name in string format. ...",
- "static": false,
- "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js",
- "private": false,
- "params": [
-
- ],
- "name": "getName",
- "owner": "Ext.Base",
- "doc": "Get the current class' name in string format.
\n\nExt.define('My.cool.Class', {\n constructor: function() {\n alert(this.self.getName()); // alerts 'My.cool.Class'\n }\n});\n\nMy.cool.Class.getName(); // 'My.cool.Class'\n
\n",
- "linenr": 631,
- "return": {
- "type": "String",
- "doc": "className
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-implement", - "shortDoc": "Add methods / properties to the prototype of this class. ...", - "static": true, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - { - "type": "Object", - "optional": false, - "doc": "\n", - "name": "members" - } - ], - "name": "implement", - "owner": "Ext.Base", - "doc": "Add methods / properties to the prototype of this class.
\n\nExt.define('My.awesome.Cat', {\n constructor: function() {\n ...\n }\n});\n\n My.awesome.Cat.implement({\n meow: function() {\n alert('Meowww...');\n }\n });\n\n var kitty = new My.awesome.Cat;\n kitty.meow();\n
\n",
- "linenr": 415,
- "return": {
- "type": "void",
- "doc": "\n"
- },
- "html_filename": "Base3.html"
- },
- {
- "deprecated": null,
- "alias": null,
- "protected": true,
- "tagname": "method",
- "href": "Base3.html#Ext-Base-method-initConfig",
- "shortDoc": "Initialize configuration for this class. ...",
- "static": false,
- "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js",
- "private": false,
- "params": [
- {
- "type": "Object",
- "optional": false,
- "doc": "\n",
- "name": "config"
- }
- ],
- "name": "initConfig",
- "owner": "Ext.Base",
- "doc": "Initialize configuration for this class. a typical example:
\n\nExt.define('My.awesome.Class', {\n // The default config\n config: {\n name: 'Awesome',\n isAwesome: true\n },\n\n constructor: function(config) {\n this.initConfig(config);\n\n return this;\n }\n});\n\nvar awesome = new My.awesome.Class({\n name: 'Super Awesome'\n});\n\nalert(awesome.getName()); // 'Super Awesome'\n
\n",
- "linenr": 63,
- "return": {
- "type": "Object",
- "doc": "mixins The mixin prototypes as key - value pairs
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Browser.html#Ext-env-Browser-method-is", - "shortDoc": "A \"hybrid\" property, can be either accessed as a method call, i.e:\n\nif (Ext.browser.is('IE')) { ... ...", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js", - "private": false, - "params": [ - { - "type": "String", - "optional": false, - "doc": "The OS name to check
\n", - "name": "value" - } - ], - "name": "is", - "owner": "Ext.env.Browser", - "doc": "A \"hybrid\" property, can be either accessed as a method call, i.e:
\n\nif (Ext.browser.is('IE')) { ... }\n
\n\n\nor as an object with boolean properties, i.e:
\n\nif (Ext.browser.is.IE) { ... }\n
\n\n\nVersions can be conveniently checked as well. For example:
\n\nif (Ext.browser.is.IE6) { ... } // Equivalent to (Ext.browser.is.IE && Ext.browser.version.equals(6))\n
\n\n\nNote that only major component and shortVersion\nvalue of the version are available via direct property checking.
\n\nSupported values are: IE, Firefox, Safari, Chrome, Opera, WebKit, Gecko, Presto, Trident and Other
\n", - "linenr": 66, - "return": { - "type": "Boolean", - "doc": "\n" - }, - "html_filename": "Browser.html" - }, - { - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-override", - "shortDoc": "Override prototype members of this class. ...", - "static": true, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - { - "type": "Object", - "optional": false, - "doc": "\n", - "name": "members" - } - ], - "name": "override", - "owner": "Ext.Base", - "doc": "Override prototype members of this class. Overridden methods can be invoked via\nExt.Base.callOverridden
\n\nExt.define('My.Cat', {\n constructor: function() {\n alert(\"I'm a cat!\");\n\n return this;\n }\n});\n\nMy.Cat.override({\n constructor: function() {\n alert(\"I'm going to be a cat!\");\n\n var instance = this.callOverridden();\n\n alert(\"Meeeeoooowwww\");\n\n return instance;\n }\n});\n\nvar kitty = new My.Cat(); // alerts \"I'm going to be a cat!\"\n // alerts \"I'm a cat!\"\n // alerts \"Meeeeoooowwww\"\n
\n",
- "linenr": 518,
- "return": {
- "type": "Ext.Base",
- "doc": "this
\n" - }, - "html_filename": "Base3.html" - }, - { - "deprecated": null, - "alias": null, - "protected": true, - "tagname": "method", - "href": "Base3.html#Ext-Base-method-statics", - "shortDoc": "Get the reference to the class from which this object was instantiated. ...", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "params": [ - - ], - "name": "statics", - "owner": "Ext.Base", - "doc": "Get the reference to the class from which this object was instantiated. Note that unlike Ext.Base.self,\nthis.statics()
is scope-independent and it always returns the class from which it was called, regardless of what\nthis
points to during run-time
Ext.define('My.Cat', {\n statics: {\n totalCreated: 0,\n speciesName: 'Cat' // My.Cat.speciesName = 'Cat'\n },\n\n constructor: function() {\n var statics = this.statics();\n\n alert(statics.speciesName); // always equals to 'Cat' no matter what 'this' refers to\n // equivalent to: My.Cat.speciesName\n\n alert(this.self.speciesName); // dependent on 'this'\n\n statics.totalCreated++;\n\n return this;\n },\n\n clone: function() {\n var cloned = new this.self; // dependent on 'this'\n\n cloned.groupName = this.statics().speciesName; // equivalent to: My.Cat.speciesName\n\n return cloned;\n }\n});\n\n\nExt.define('My.SnowLeopard', {\n extend: 'My.Cat',\n\n statics: {\n speciesName: 'Snow Leopard' // My.SnowLeopard.speciesName = 'Snow Leopard'\n },\n\n constructor: function() {\n this.callParent();\n }\n});\n\nvar cat = new My.Cat(); // alerts 'Cat', then alerts 'Cat'\n\nvar snowLeopard = new My.SnowLeopard(); // alerts 'Cat', then alerts 'Snow Leopard'\n\nvar clone = snowLeopard.clone();\nalert(Ext.getClassName(clone)); // alerts 'My.SnowLeopard'\nalert(clone.groupName); // alerts 'Cat'\n\nalert(My.Cat.totalCreated); // alerts 3\n
\n",
- "linenr": 199,
- "return": {
- "type": "Class",
- "doc": "\n"
- },
- "html_filename": "Base3.html"
- }
- ],
- "property": [
- {
- "type": "String",
- "deprecated": null,
- "alias": null,
- "protected": false,
- "tagname": "property",
- "href": "Browser.html#Ext-env-Browser-property-engineName",
- "static": false,
- "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js",
- "private": false,
- "name": "engineName",
- "owner": "Ext.env.Browser",
- "doc": "Read-only - the full name of the current browser's engine\nPossible values are: WebKit, Gecko, Presto, Trident and Other
\n", - "linenr": 106, - "html_filename": "Browser.html" - }, - { - "type": "Ext.Version", - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "property", - "href": "Browser.html#Ext-env-Browser-property-engineVersion", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js", - "private": false, - "name": "engineVersion", - "owner": "Ext.env.Browser", - "doc": "Read-only, refer to Ext.Version
\n", - "linenr": 113, - "html_filename": "Browser.html" - }, - { - "type": "Boolean", - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "property", - "href": "Browser.html#Ext-env-Browser-property-isSecure", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js", - "private": false, - "name": "isSecure", - "owner": "Ext.env.Browser", - "doc": "True if the page is running over SSL
\n", - "linenr": 54, - "html_filename": "Browser.html" - }, - { - "type": "Boolean", - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "property", - "href": "Browser.html#Ext-env-Browser-property-isStrict", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js", - "private": false, - "name": "isStrict", - "owner": "Ext.env.Browser", - "doc": "True if the document is in strict mode
\n", - "linenr": 60, - "html_filename": "Browser.html" - }, - { - "type": "String", - "deprecated": null, - "alias": null, - "protected": false, - "tagname": "property", - "href": "Browser.html#Ext-env-Browser-property-name", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js", - "private": false, - "name": "name", - "owner": "Ext.env.Browser", - "doc": "Read-only - the full name of the current browser\nPossible values are: IE, Firefox, Safari, Chrome, Opera and Other
\n", - "linenr": 93, - "html_filename": "Browser.html" - }, - { - "type": "Class", - "deprecated": null, - "alias": null, - "protected": true, - "tagname": "property", - "href": "Base3.html#Ext-Base-property-self", - "shortDoc": "Get the reference to the current class from which this object was instantiated. ...", - "static": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/class/Base.js", - "private": false, - "name": "self", - "owner": "Ext.Base", - "doc": "Get the reference to the current class from which this object was instantiated. Unlike Ext.Base.statics,\nthis.self
is scope-dependent and it's meant to be used for dynamic inheritance. See Ext.Base.statics\nfor a detailed comparison
Ext.define('My.Cat', {\n statics: {\n speciesName: 'Cat' // My.Cat.speciesName = 'Cat'\n },\n\n constructor: function() {\n alert(this.self.speciesName); / dependent on 'this'\n\n return this;\n },\n\n clone: function() {\n return new this.self();\n }\n});\n\n\nExt.define('My.SnowLeopard', {\n extend: 'My.Cat',\n statics: {\n speciesName: 'Snow Leopard' // My.SnowLeopard.speciesName = 'Snow Leopard'\n }\n});\n\nvar cat = new My.Cat(); // alerts 'Cat'\nvar snowLeopard = new My.SnowLeopard(); // alerts 'Snow Leopard'\n\nvar clone = snowLeopard.clone();\nalert(Ext.getClassName(clone)); // alerts 'My.SnowLeopard'\n
\n",
- "linenr": 18,
- "html_filename": "Base3.html"
- },
- {
- "type": "Ext.Version",
- "deprecated": null,
- "alias": null,
- "protected": false,
- "tagname": "property",
- "href": "Browser.html#Ext-env-Browser-property-version",
- "static": false,
- "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js",
- "private": false,
- "name": "version",
- "owner": "Ext.env.Browser",
- "doc": "Read-only, refer to Ext.Version
\n", - "linenr": 100, - "html_filename": "Browser.html" - } - ], - "cssVar": [ - - ], - "cssMixin": [ - - ], - "event": [ - - ] - }, - "singleton": false, - "alias": null, - "superclasses": [ - "Ext.Base" - ], - "protected": false, - "tagname": "class", - "mixins": [ - - ], - "href": "Browser.html#Ext-env-Browser", - "subclasses": [ - - ], - "static": false, - "author": null, - "component": false, - "filename": "/mnt/ebs/nightly/git/SDK/platform/core/src/env/Browser.js", - "private": false, - "alternateClassNames": [ - - ], - "name": "Ext.env.Browser", - "doc": "Provide useful information about the current browser.\nShould not be manually instantiated unless for unit-testing; access the global instance stored in Ext.browser instead. Example:
\n\nif (Ext.browser.is.IE) {\n // IE specific code here\n}\n\nif (Ext.browser.is.WebKit) {\n // WebKit specific code here\n}\n\nconsole.log(\"Version \" + Ext.browser.version);\n
\n\n\nFor a full list of supported values, refer to: is
\n\n@borrows Ext.Base.extend
\n", - "mixedInto": [ - - ], - "linenr": 1, - "xtypes": [ - - ], - "html_filename": "Browser.html", - "extends": "Ext.Base" -}); \ No newline at end of file +Ext.data.JsonP.Ext_env_Browser({"tagname":"class","html":"Hierarchy
Ext.BaseExt.env.BrowserFiles
Provides useful information about the current browser.\nShould not be manually instantiated unless for unit-testing; access the global instance\nstored in Ext.browser instead. Example:
\n\nif (Ext.browser.is.IE) {\n // IE specific code here\n}\n\nif (Ext.browser.is.WebKit) {\n // WebKit specific code here\n}\n\nconsole.log(\"Version \" + Ext.browser.version);\n
\n\nFor a full list of supported values, refer to: is
\nRead-only - the full name of the current browser's engine\nPossible values are: WebKit, Gecko, Presto, Trident and Other
\nRead-only - the full name of the current browser's engine\nPossible values are: WebKit, Gecko, Presto, Trident and Other
\nRead-only - the full name of the current browser\nPossible values are: IE, Firefox, Safari, Chrome, Opera and Other
\nRead-only - the full name of the current browser\nPossible values are: IE, Firefox, Safari, Chrome, Opera and Other
\nGet the reference to the current class from which this object was instantiated. Unlike statics,\nthis.self
is scope-dependent and it's meant to be used for dynamic inheritance. See statics\nfor a detailed comparison
Ext.define('My.Cat', {\n statics: {\n speciesName: 'Cat' // My.Cat.speciesName = 'Cat'\n },\n\n constructor: function() {\n alert(this.self.speciesName); / dependent on 'this'\n\n return this;\n },\n\n clone: function() {\n return new this.self();\n }\n});\n\n\nExt.define('My.SnowLeopard', {\n extend: 'My.Cat',\n statics: {\n speciesName: 'Snow Leopard' // My.SnowLeopard.speciesName = 'Snow Leopard'\n }\n});\n\nvar cat = new My.Cat(); // alerts 'Cat'\nvar snowLeopard = new My.SnowLeopard(); // alerts 'Snow Leopard'\n\nvar clone = snowLeopard.clone();\nalert(Ext.getClassName(clone)); // alerts 'My.SnowLeopard'\n
\nCall the original method that was previously overridden with override
\n\nExt.define('My.Cat', {\n constructor: function() {\n alert(\"I'm a cat!\");\n\n return this;\n }\n});\n\nMy.Cat.override({\n constructor: function() {\n alert(\"I'm going to be a cat!\");\n\n var instance = this.callOverridden();\n\n alert(\"Meeeeoooowwww\");\n\n return instance;\n }\n});\n\nvar kitty = new My.Cat(); // alerts \"I'm going to be a cat!\"\n // alerts \"I'm a cat!\"\n // alerts \"Meeeeoooowwww\"\n
\nThe arguments, either an array or the arguments
object
Returns the result after calling the overridden method
\nCall the parent's overridden method. For example:
\n\nExt.define('My.own.A', {\n constructor: function(test) {\n alert(test);\n }\n});\n\nExt.define('My.own.B', {\n extend: 'My.own.A',\n\n constructor: function(test) {\n alert(test);\n\n this.callParent([test + 1]);\n }\n});\n\nExt.define('My.own.C', {\n extend: 'My.own.B',\n\n constructor: function() {\n alert(\"Going to call parent's overriden constructor...\");\n\n this.callParent(arguments);\n }\n});\n\nvar a = new My.own.A(1); // alerts '1'\nvar b = new My.own.B(1); // alerts '1', then alerts '2'\nvar c = new My.own.C(2); // alerts \"Going to call parent's overriden constructor...\"\n // alerts '2', then alerts '3'\n
\nThe arguments, either an array or the arguments
object\nfrom the current method, for example: this.callParent(arguments)
Returns the result from the superclass' method
\nInitialize configuration for this class. a typical example:
\n\nExt.define('My.awesome.Class', {\n // The default config\n config: {\n name: 'Awesome',\n isAwesome: true\n },\n\n constructor: function(config) {\n this.initConfig(config);\n\n return this;\n }\n});\n\nvar awesome = new My.awesome.Class({\n name: 'Super Awesome'\n});\n\nalert(awesome.getName()); // 'Super Awesome'\n
\nmixins The mixin prototypes as key - value pairs
\nA \"hybrid\" property, can be either accessed as a method call, i.e:
\n\nif (Ext.browser.is('IE')) { ... }\n
\n\nor as an object with boolean properties, i.e:
\n\nif (Ext.browser.is.IE) { ... }\n
\n\nVersions can be conveniently checked as well. For example:
\n\nif (Ext.browser.is.IE6) { ... } // Equivalent to (Ext.browser.is.IE && Ext.browser.version.equals(6))\n
\n\nNote that only major component and shortVersion\nvalue of the version are available via direct property checking.
\n\nSupported values are: IE, Firefox, Safari, Chrome, Opera, WebKit, Gecko, Presto, Trident and Other
\nThe OS name to check
\nGet the reference to the class from which this object was instantiated. Note that unlike self,\nthis.statics()
is scope-independent and it always returns the class from which it was called, regardless of what\nthis
points to during run-time
Ext.define('My.Cat', {\n statics: {\n totalCreated: 0,\n speciesName: 'Cat' // My.Cat.speciesName = 'Cat'\n },\n\n constructor: function() {\n var statics = this.statics();\n\n alert(statics.speciesName); // always equals to 'Cat' no matter what 'this' refers to\n // equivalent to: My.Cat.speciesName\n\n alert(this.self.speciesName); // dependent on 'this'\n\n statics.totalCreated++;\n\n return this;\n },\n\n clone: function() {\n var cloned = new this.self; // dependent on 'this'\n\n cloned.groupName = this.statics().speciesName; // equivalent to: My.Cat.speciesName\n\n return cloned;\n }\n});\n\n\nExt.define('My.SnowLeopard', {\n extend: 'My.Cat',\n\n statics: {\n speciesName: 'Snow Leopard' // My.SnowLeopard.speciesName = 'Snow Leopard'\n },\n\n constructor: function() {\n this.callParent();\n }\n});\n\nvar cat = new My.Cat(); // alerts 'Cat', then alerts 'Cat'\n\nvar snowLeopard = new My.SnowLeopard(); // alerts 'Cat', then alerts 'Snow Leopard'\n\nvar clone = snowLeopard.clone();\nalert(Ext.getClassName(clone)); // alerts 'My.SnowLeopard'\nalert(clone.groupName); // alerts 'Cat'\n\nalert(My.Cat.totalCreated); // alerts 3\n
\nAdd / override static properties of this class.
\n\nExt.define('My.cool.Class', {\n ...\n});\n\nMy.cool.Class.addStatics({\n someProperty: 'someValue', // My.cool.Class.someProperty = 'someValue'\n method1: function() { ... }, // My.cool.Class.method1 = function() { ... };\n method2: function() { ... } // My.cool.Class.method2 = function() { ... };\n});\n
\nthis
\nBorrow another class' members to the prototype of this class.
\n\nExt.define('Bank', {\n money: '$$$',\n printMoney: function() {\n alert('$$$$$$$');\n }\n});\n\nExt.define('Thief', {\n ...\n});\n\nThief.borrow(Bank, ['money', 'printMoney']);\n\nvar steve = new Thief();\n\nalert(steve.money); // alerts '$$$'\nsteve.printMoney(); // alerts '$$$$$$$'\n
\nThe class to borrow members from
\nThe names of the members to borrow
\nthis
\nCreate a new instance of this Class.
\n\nExt.define('My.cool.Class', {\n ...\n});\n\nMy.cool.Class.create({\n someConfig: true\n});\n
\n\nAll parameters are passed to the constructor of the class.
\nthe created instance.
\nCreate aliases for existing prototype methods. Example:
\n\nExt.define('My.cool.Class', {\n method1: function() { ... },\n method2: function() { ... }\n});\n\nvar test = new My.cool.Class();\n\nMy.cool.Class.createAlias({\n method3: 'method1',\n method4: 'method2'\n});\n\ntest.method3(); // test.method1()\n\nMy.cool.Class.createAlias('method5', 'method3');\n\ntest.method5(); // test.method3() -> test.method1()\n
\nThe new method name, or an object to set multiple aliases. See\nflexSetter
\nThe original method name
\nGet the current class' name in string format.
\n\nExt.define('My.cool.Class', {\n constructor: function() {\n alert(this.self.getName()); // alerts 'My.cool.Class'\n }\n});\n\nMy.cool.Class.getName(); // 'My.cool.Class'\n
\nclassName
\nAdd methods / properties to the prototype of this class.
\n\nExt.define('My.awesome.Cat', {\n constructor: function() {\n ...\n }\n});\n\n My.awesome.Cat.implement({\n meow: function() {\n alert('Meowww...');\n }\n });\n\n var kitty = new My.awesome.Cat;\n kitty.meow();\n
\nOverride prototype members of this class. Overridden methods can be invoked via\ncallOverridden
\n\nExt.define('My.Cat', {\n constructor: function() {\n alert(\"I'm a cat!\");\n\n return this;\n }\n});\n\nMy.Cat.override({\n constructor: function() {\n alert(\"I'm going to be a cat!\");\n\n var instance = this.callOverridden();\n\n alert(\"Meeeeoooowwww\");\n\n return instance;\n }\n});\n\nvar kitty = new My.Cat(); // alerts \"I'm going to be a cat!\"\n // alerts \"I'm a cat!\"\n // alerts \"Meeeeoooowwww\"\n
\nthis
\n