17 Sep 2012 7:37 AM #11
Found the Problem.
The second parameter of processEvent() wasn't the GridPanel where the column was in, so I couldn't use it to get the right Store.
Now I'm adding the used store to my custom pagingcolumn constructor and can call load() in processEvent(). Now everything works fine.
What I did:
- extended the Proxy "root" function, so it generates a node, which only holds the paging informations of its parent.
- subclassed Ext.grid.column.Column, with resizable: false and width: 0
- wrote a renderer, which generates the HTML for all of these paging nodes. (colspan=1000 etc)
- wrote a processEvent method, which captures the events from the page-links and reloads the children of the current parent-node with different limit and start parameters
now I can add the pagingcolumn at the beginning of all treepanels and if it finds a paging-node it just overwrites all the tds with it's colspan. When I click a page link the current children get dropped and new ones will be loaded.
Since it has a width of 0 and can't be resized, it doesn't event generate strange behaviours.
I probably will switch from this "1 2 3 4 5" display to the default ExtJS "|< < Page [ 1 ] of 5. > >|" when I get the textfield styling right. (the default is too big for a row).Using Ext JS 4.1 (commercial) to build GUIs for web analytics.