Column groups can indeed span other groups - working from the source at http://www.sencha.com/examples/#Exam...ggregationgrid I added the following bolded code (other lines added for context):
This resulted in the following UI:
ColumnModel<Stock> cm = new ColumnModel<Stock>(configs);
cm.addHeaderGroup(0, 0, new HeaderGroupConfig("Stock", 1, 4));
cm.addHeaderGroup(1, 0, new HeaderGroupConfig("Stock Information", 1, 2));
cm.addHeaderGroup(1, 2, new HeaderGroupConfig("Stock Performance", 1, 2));
AggregationRowConfig<Stock> averages = new AggregationRowConfig<Stock>();
The details of the row/column to insert this header are important, as are the rowspan/colspan to be set on the HeaderGroupConfig itself.