Ext.define("App.module.Calendar", {
extend : "Ext.grid.Panel",
requires : ["App.models.System", 'App.models.WorkType'],
store : null,
title : 'Календарь',
iconCls : "calendar16",
id: 'tsl',
dockedItems: [],
initComponent : function () {
var me = this;
this.dockedItems = [
{
xtype:'toolbar',
id: 'ttl',
dock:'top',
renderTo: document.body,
items:[
[Ext.create('Ext.form.ComboBox', {
store : Ext.create('Ext.data.Store', {
model : 'App.models.System'
}),
displayField : 'name',
valueField : 'id',
typeAhead : true,
editable:false,
triggerAction : 'all',
pageSize: 24,
emptyText : 'Выбор системы...',
width : 300 ,
listeners : {
select : function () {
me.store.proxy.extraParams['system_id'] = records[0].get('id')
me.store.load(
function() {
this.each(function() {
тут я получаю масив...
});
me.head1() // вот тут вызов head1 после того как получен масив
}
);
}
}
})]
,{
xtype : 'button',
text : 'Показать все наименования',
handler : function () {
me.store.load()
}
}
]
}
]
},
head1 : function () {
// эта функция должна вставить grid в под combobox и между другим гидом, после того как произойдет событие select в combobox.
this.dockedItems.push(Ext.create('Ext.grid.Panel', {
columns: [
{ header: '<b>Кол-во работ :</b>', dataIndex: 'name' },
{ header: '<b>2</b>', dataIndex: 'email', width : 27, align: 'center' },
{ header: '<b>5</b>', dataIndex: 'phone', width : 27, align: 'center' },
{ header: '<b>0</b>', dataIndex: 'phone', width : 27, align: 'center' }
]
}