PDA

View Full Version : [FIXED-EXTJSIV-304] missing grid reconfigure() method missing columnModel setConfig()



saprot
24 Mar 2011, 7:05 AM
Because of missing grid reconfigure method and gridView setConfig method it is not possible to reconfigure grid with new headers (columns).

aconran
4 Apr 2011, 11:58 AM
In the next release, the GridPanel will expose a reconfigure method with the same signature as 3.x.

Because HeaderContainer is now a valid Container that just holds headers you can add/remove/insert Header's into the HeaderContainer without having to have a special method to setConfig.

For example:


grid.headerCt.removeAll();
grid.headerCt.add(columns);
grid.getView().refresh();


This could also be more complex, inserting at specific locations, etc

estemendoza
26 May 2011, 8:17 AM
Hi

The problem that I'm having is that if I create a grid with CheckboxModel:



var sm = Ext.create('Ext.selection.CheckboxModel');

var taskGrid = Ext.create('Ext.grid.GridPanel', {
selModel: sm,
...


the grid is rendered correctly with a column with checkboxes for every row.

But if a do a reconfigure, this column disappears.

Any ideas?

Thanks

monkeyJack
27 May 2011, 8:24 AM
I'm very new to sencha... but I'm also working on using a grid and reconfiguring it with dynamic columns and new stores. When you reconfigure the grid, are you only changing the "store"? Or do you reconfigure new columns into the grid also?

I have a defined grid (with cellediting) that initially loads its store/model automatically. Based on this initial store, I am dynamically creating new columns and transposing the store into a new "data model". I then reconfigure the grid with the new store and columns, and the grid shows all the new stuff.

However, the reconfigure method causes my cellediting to break. It seems that the grid loses its celleditor plugin after a reconfigure().

After searching forum, I found a line of code that seems to work. I am reinitializing the grids plugins immediately after I reconfigure. It seems to work so far. I'd appreciate any comments if this is the right (best) approach.


mygrid.reconfigure(newDynamicStore, newDynamicColumns);
Ext.Array.each(mygrid.plugins, function (plugin) {
plugin.init(mygrid);