Code in this post can be obsolete, however, principles and theory may still apply.
// vim: sw=4:ts=4:nu:nospell:fdc=4 /** * A Plugin * * @author Ing. Jozef Sakáloš * @copyright (c) 2008, by Ing. Jozef Sakáloš * @date 3. April 2008 * @version $Id$ * * @license plugin.js is licensed under the terms of the Open Source * LGPL 3.0 license. Commercial use is permitted to the extent that the * code/component(s) do NOT become part of another Open Source or Commercially * licensed development library or toolkit without explicit permission. * * License details: http://www.gnu.org/licenses/lgpl.html */ /*global Ext */ /** * @class APlugin * @extends Ext.util.Observable * * Creates new APlugin object * @constructor * @param {Object} config The config object */ APlugin = function(config) { Ext.apply(this, config); // call parent APlugin.superclass.constructor.call(this); }; // eo constructor Ext.extend(APlugin, Ext.util.Observable, { // defaults - can be configured from outside init:function(parent) { this.parent = parent; // rest of plugin init code } // eo function init // other plugin functions }); // eo extend // register xtype Ext.reg('apluginxtype', APlugin); // eof
I'm a well seasoned developer, consultant and educator of web applications based mainly on Sencha libraries, PHP, MySQL and Node.js. Besides (Apple) computers, I love photography and mountain biking.
Follow me:
Latest posts by saki (see all)
- Ext, Angular, React, and Vue - 27. June 2019
- The Site Resurgence - 11. February 2018
- Configuring ViewModel Hierarchy - 19. June 2015
2 Responses
This pattern has not been tested with Ext 3.0. Remember, 3.0 is alpha so the problem can be there as well. All my running and fully functional Ext 2.x plugins follow this pattern.
The best would be if you posted a showcase.
Using this pattern (plugin has no functionality, it is only declared…), I get “too much recursion” in FireBug, ext-all-debug.js, at line 10555.
Special mention: this is the trunk version of Ext (3.0 alpha).