Here's a combination of the LockingGridView and the regular GroupingView which comes in handy if you want both the locking and grouping functionality at the same time. Tested in IE7/8, FF3 and Safari. To test it, just extract the zip file into your Ext JS examples folder. This extension is the base for the Ext Gantt
That's basically some magic based on Condor's groupingheader plugin adapted for the lockinggridview. When I have more time I'll look at dropping into the UX section too!
Great job by the way. I'm going to be testing this further with the groupSummary plugin and the gridSummary plugin to see if this will work for a project I'm working on.
I may have found a bug. If you Unlock the grid then you lose the grouped column. So for instance. Invoke the context menu from Company and choose Unlock. The Group1, Group2, etc headings disappear and only reappear if you show the column. But I don't want to show the column, I want it grouped by the column. Shouldn't Lock/Unlock leave the look of the grid unchanged except the fact the scroll bar now extends the entire grid?
Sorry for the long winded post. Just wanted to make sure I hit the angles that ran through my head.
You are right, this is kind of a special case. The grouping header is only shown in the locked part of the grid, I guess I could check if no locked columns exist and render the header into the unlocked group in that case. Good catch
Code in original zip package has been updated with this fix!
Hey Mankz,
I'm working on getting the groupSummary plugin to work with LockingGroupingGridView. I was wondering about your use of XTemplate for the Locked/Unlocked pieces. I'm pretty new to ExtJs and I'm learning the framework as I go, so some of these nuances are blindingly obvious to me.
I think I've got a good idea of what I need to do for the groupSummary, so we'll see how it goes. I think I'd have to render a row in the Locked part and the Unlocked part as opposed to a row that spans the entire grid.
The interesting part is that it puts some garbage in both of the correct spots where I would expect there to be rendered rows, so maybe I won't. Not sure yet. Learning how applying plugins to a view works is my biggest hurdle right now.