I want to change icon of treenode of Tree Panel. I am able to do so when I append childNode dynamically. But how to set icon to treenode when we apply treestore through proxy directly to Treepanel view in initComponent().
TreePanelView.js
initComponent: function() {
Ext.apply(this, {
store: new Ext.data.TreeStore({
proxy: {
type: 'ajax',
url: 'json/treeview.json'
},
folderSort: true
}),
columns: [{
xtype: 'treecolumn',
text: 'Components',
flex: 2,
sortable: true,
dataIndex: 'childName'
}]
});
this.callParent();
}
You should be able to use a renderer to parse the value of the column and then set an icon based on whatever rules you may have. This simple example adds a class to the column cell that equals it's value, but you could parse the column value and set a specific class or icon in the renderer function instead.
More info: http://docs.sencha.com/extjs/4.2.3/#!/api/Ext.grid.column.Column-cfg-renderer