Здравствуйте, есть Ext.tree.TreePanel. Использую ExtJS 3.4.
this.tree = new Ext.tree.TreePanel({
collapsible: false,
animCollapse: false,
border: true,
autoScroll: true,
animate: false,
enableDD: true,
containerScroll: true,
loader: new TimeOutTreeLoader({
url: 'cgi.exe',
baseParams: {
action: 101
},
requestTimeout: (60 * 2) * 1000
}),
root: new Ext.tree.AsyncTreeNode({
text: 'Отделы',
draggable: false
}),
rootVisible: false,
listeners: {
click: function(node, e) {
}
},
tbar: {
items: [
{
xtype: 'tbtext',
text: 'Поиск'
},
{
xtype: 'tbspacer'
},
triggerField
]
}
});
Как отобразить надпись загрузки ?
У Ext.grid.GridPanel есть loadMask, например, а у дерева что ?
Я пробовал через tree.load()
this.tree.load({
url: 'cgi.exe',
params: {
action: 101
},
callback: function(response) {
var result = Ext.decode(response.responseText);
var root = new Ext.tree.AsyncTreeNode({
text: 'Отделы',
draggable: false,
children: result.departments
});
tree.setRootNode(root);
},
discardUrl: false,
nocache: false,
text: 'Loading...',
timeout: 30,
scripts: false
});
Но тут не получилось, возникла какая-то ошибка
* The only required property is url. The optional properties nocache, text and scripts
* are shorthand for disableCaching, indicatorText and loadScripts and are used to set their
* associated property on this panel Updater instance.
* @return {Ext.Panel} this
*/
load : function(){
var um = this.body.getUpdater(); // <----- здесь ошибка
um.update.apply(um, arguments);
return this;
},
tree находится в панели, которая расположена в Viewport. Может быть это и заработало бы, если бы я вставил рендерил в тело документа.
Вообщем, помогите, пожалуйста, сделать нормальную загрузку статического дерева с отображением надписи загрузки.