| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 | 
							- <!DOCTYPE html>
 
- <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>
 
-   <style type="text/css">
 
-     .highlight { display: block; background-color: #ddd; }
 
-   </style>
 
-   <script type="text/javascript">
 
-     function highlight() {
 
-       document.getElementById(location.hash.replace(/#/, "")).className = "highlight";
 
-     }
 
-   </script>
 
- </head>
 
- <body onload="prettyPrint(); highlight();">
 
-   <pre class="prettyprint lang-js"><span id='Ext-PluginManager'>/**
 
- </span> * Provides a registry of available Plugin classes indexed by a mnemonic code known as the Plugin's ptype.
 
-  *
 
-  * A plugin may be specified simply as a *config object* as long as the correct `ptype` is specified:
 
-  *
 
-  *     {
 
-  *         ptype: 'gridviewdragdrop',
 
-  *         dragText: 'Drag and drop to reorganize'
 
-  *     }
 
-  *
 
-  * Or just use the ptype on its own:
 
-  *
 
-  *     'gridviewdragdrop'
 
-  *
 
-  * Alternatively you can instantiate the plugin with Ext.create:
 
-  *
 
-  *     Ext.create('Ext.grid.plugin.DragDrop', {
 
-  *         dragText: 'Drag and drop to reorganize'
 
-  *     })
 
-  */
 
- Ext.define('Ext.PluginManager', {
 
-     extend: 'Ext.AbstractManager',
 
-     alternateClassName: 'Ext.PluginMgr',
 
-     singleton: true,
 
-     typeName: 'ptype',
 
- <span id='Ext-PluginManager-method-create'>    /**
 
- </span>     * Creates a new Plugin from the specified config object using the config object's ptype to determine the class to
 
-      * instantiate.
 
-      * @param {Object} config A configuration object for the Plugin you wish to create.
 
-      * @param {Function} defaultType (optional) The constructor to provide the default Plugin type if the config object does not
 
-      * contain a `ptype`. (Optional if the config contains a `ptype`).
 
-      * @return {Ext.Component} The newly instantiated Plugin.
 
-      */
 
-     create : function(config, defaultType){
 
-         if (config.init) {
 
-             return config;
 
-         } else {
 
-             return Ext.createByAlias('plugin.' + (config.ptype || defaultType), config);
 
-         }
 
-         // Prior system supported Singleton plugins.
 
-         //var PluginCls = this.types[config.ptype || defaultType];
 
-         //if (PluginCls.init) {
 
-         //    return PluginCls;
 
-         //} else {
 
-         //    return new PluginCls(config);
 
-         //}
 
-     },
 
-     //create: function(plugin, defaultType) {
 
-     //    if (plugin instanceof this) {
 
-     //        return plugin;
 
-     //    } else {
 
-     //        var type, config = {};
 
-     //
 
-     //        if (Ext.isString(plugin)) {
 
-     //            type = plugin;
 
-     //        }
 
-     //        else {
 
-     //            type = plugin[this.typeName] || defaultType;
 
-     //            config = plugin;
 
-     //        }
 
-     //
 
-     //        return Ext.createByAlias('plugin.' + type, config);
 
-     //    }
 
-     //},
 
- <span id='Ext-PluginManager-method-findByType'>    /**
 
- </span>     * Returns all plugins registered with the given type. Here, 'type' refers to the type of plugin, not its ptype.
 
-      * @param {String} type The type to search for
 
-      * @param {Boolean} defaultsOnly True to only return plugins of this type where the plugin's isDefault property is
 
-      * truthy
 
-      * @return {Ext.AbstractPlugin[]} All matching plugins
 
-      */
 
-     findByType: function(type, defaultsOnly) {
 
-         var matches = [],
 
-             types   = this.types,
 
-             name,
 
-             item;
 
-         for (name in types) {
 
-             if (!types.hasOwnProperty(name)) {
 
-                 continue;
 
-             }
 
-             item = types[name];
 
-             if (item.type == type && (!defaultsOnly || (defaultsOnly === true && item.isDefault))) {
 
-                 matches.push(item);
 
-             }
 
-         }
 
-         return matches;
 
-     }
 
- }, function() {
 
- <span id='Ext-method-preg'>    /**
 
- </span>     * Shorthand for {@link Ext.PluginManager#registerType}
 
-      * @param {String} ptype The ptype mnemonic string by which the Plugin class
 
-      * may be looked up.
 
-      * @param {Function} cls The new Plugin class.
 
-      * @member Ext
 
-      * @method preg
 
-      */
 
-     Ext.preg = function() {
 
-         return Ext.PluginManager.registerType.apply(Ext.PluginManager, arguments);
 
-     };
 
- });
 
- </pre>
 
- </body>
 
- </html>
 
 
  |