After upgrade to 4.2 beta window with tree store didn't open again
I've made upgrade my app to extjs 4.2. After that window with treestore open correctly, close and if i try to reopen it i have error:
TreeStore panel:
Code:
Ext.define('app.view.organizationstructure.Tree', {
extend: 'Ext.tree.Panel',
alias: 'widget.organizationstructuretree',
id: 'organization-structure-tree',
border : 0,
initComponent: function() {
var me = this;
Ext.applyIf(me, {
store : 'OrganizationStructureTree',
title: app.Txt.get('organizationStructure.treeTitle'),
displayField: 'text',
removeMenu : app.Util.getRemoveContextMenu(me.onContextMenuRemoveClick, me),
viewConfig: {
loadingText: vSpeed.Txt.get('global.loading'),
rootVisible: false,
plugins: [
app.Util.getDragAndDropTreeViewPlugin()
],
listeners: {
beforedrop: {
fn: me.onTreeViewDragAndDropPluginBeforeDrop,
scope: me
},
drop:{
fn: me.onTreeViewDragAndDropPluginDrop,
scope: me
}
}
},
listeners: {
beforeitemcontextmenu: {
fn: me.onTreepanelBeforeItemContextMenu,
scope: me
}
}
});
me.callParent(arguments);
},
onTreeViewDragAndDropPluginBeforeDrop: function(node, data, overModel, dropPosition, dropFunction, options){
data.records[0] = Ext.App.getController('organizationstructure.Tree')
.createNodeFromOrganizationElement(data.records[0]);
},
onTreeViewDragAndDropPluginDrop: function(){
this.fireEvent('afterElementDropOnTree');
},
onTreepanelBeforeItemContextMenu: function(tablepanel, record, item, index, e, options) {
e.stopEvent();
if(record.data.parentId!='root'){
this.removeMenu.recordToRemove = record;
this.removeMenu.showAt(e.getXY());
}
},
onContextMenuRemoveClick: function(){
var me = this;
app.Msg.confirmMessage({
msg: vSpeed.Txt.get('organizationStructure.removeElementFromTreeConfirmMsg'),
title: vSpeed.Txt.get('organizatonsStructure.removeElementFromTreeTitle'),
confirm: function() {
me.fireEvent('removeElementFromTree', me.removeMenu.recordToRemove);
},
scope : me
});
}
});
Store:
Code:
Ext.define('app.store.OrganizationStructureTree', {
extend: 'Ext.data.TreeStore',
requires: [
'app.model.OrganizationStructureTree'
],
constructor: function(cfg) {
var me = this;
cfg = cfg || {};
me.callParent([Ext.apply({
clearOnLoad : true,
root : {
expanded: false
},
autoLoad : false,
model: 'app.model.OrganizationStructureTree',
proxy: {
type: 'ajax',
api: {
create : app.Config.getConfigOption('organizationStructureCreateUrl'),
read: app.Config.getConfigOption('organizationStructureReadUrl'),
update: app.Config.getConfigOption('organizationStructureUpdateUrl'),
destroy : app.Config.getConfigOption('organizationStructureDeleteUrl')
},
reader: {
type: 'json',
successProperty: 'success'
}
}
}, cfg)]);
}
});
Model :
Code:
Ext.define('app.model.OrganizationStructureTree', {
extend: 'Ext.data.Model',
fields: [
{
name: 'text',
type: 'string'
},
{
name: 'id',
type : 'string'
}
]
});
Thanks for any help.