木曜日, 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: ExtJS

