Szükségem volt arra, hogy egymás alatt két felső toolbar jelenjen meg, némi keresgéléssel megtaláltam a megoldást, ami egyszerűbb lett, mint gondoltam:
renderTo: Ext.getBody(),
tbar: [{text:'első'}, ' ','...'],
tbar2: [{text:'második'},' ','...'],
onRender:function() {
Ext.Panel.prototype.onRender.apply(this, arguments);
new Ext.Toolbar({ renderTo:this.tbar, items: this.tbar2 });
}
});
Ám, nekem kicsivel rugalmasabb megoldás kellett, így a fenti onRender minimális átalakításával már tetszőleges toolbar adható hozzá:
renderTo: Ext.getBody(),
//tbar: null,
//tbar: [{text:'első'}, ' ','...'],
tbar: [ [{text:'első'}, ' ','...'], [{text:'második'},' ','...'], [{text:'harmadik'},' ','...'] ],
onRender:function() {
var tempTopToolbar = this.topToolbar;
if ( !Ext.isArray( tempTopToolbar ) || !Ext.isArray(tempTopToolbar [0] ) ) {
var tempTopToolbar = [tempTopToolbar ];
}
delete this.topToolbar;
Ext.Panel.prototype.onRender.apply(this, arguments);
Ext.each( tempTopToolbar, function(tbar) {
new Ext.Toolbar({ renderTo:this.tbar, items:tbar });
}, this);
}
});
Az átmeneti változó körüli kavarásra azért volt szükség, mert az „egy elemű” tbar is tömb, azaz a
utasítás nem a megfelelő eredményt adná.