木曜日, 2 月 26th, 2009 | Author: djodjo
ExtJSのコンポーネントを拡張するプラグイン。コンフィグオプションにpluginsを指定できるものがいくつもあります。
プラグインを作るとなると少々難しく思いがちですが、ExtJSのそれはシンプルです。
クラスをひとつ定義し、メソッドinitがあるだけ。
後はお好きに。といった具合。
プラグイン名 = function(){ this.init = function(comp){ compは組み込まれたコンポーネント。 }; }
このinit関数がいつコールされるかというと・・・・
Ext.Componentの199行目から、402行目(initPlugin)のくだり。
initComponent関数が呼ばれた直後となります。
イベント登録(addEvents)は終わり、renderされる前がタイミング。
this.initComponent(); if(this.plugins){ if(Ext.isArray(this.plugins)){ for(var i = 0, len = this.plugins.length; i < len; i++){ this.plugins[i] = this.initPlugin(this.plugins[i]); } }else{ this.plugins = this.initPlugin(this.plugins); } } ・ ・ ・ initPlugin : function(p){ p.init(this); return p; },
サンプルにしては頼りないですが、以下はプラグインの記事
●TreePanelの余白をクリックでフォーカスを解除する
●TabPanelのクローズ処理プラグイン
Category: 未分類