[SOLVED] Problem with ColumGroupHeaderLayer and SortHeaderLayer [message #1062217] |
Thu, 06 June 2013 14:28 |
Tom Hausi Messages: 4 Registered: June 2013 |
Junior Member |
|
|
Hi,
I just migrated from NatTable SF-2.3.1 to the new Nebula 1.0.0 release.
Now, when sorting the first column in a ColumnGroup, the sort icon gets painted on the GroupHeader as well (see screenshot - unfortunately i can't include the image in the post directly).
ht tp://s12.postimg.org/b2ngthbul/screen.png
The problem seems to be SortHeaderLayer#getConfigLabelsByPosition which also adds the "SORT_UP"-Label to the GroupHeader.
My configuration is:
columnHeaderLayer = new ColumnHeaderLayer(columnHeaderDataLayer, bodyLayer, selectionLayer, false);
columnHeaderLayer.addConfiguration(new MyColumnHeaderLayerConfiguration());
columnGroupHeaderLayer = new ColumnGroupHeaderLayer(columnHeaderLayer, selectionLayer, columnGroupModel,false);
columnGroupHeaderLayer.addConfiguration(new MyColumnGroupHeaderLayerConfiguration(columnGroupModel));
sortableColumnHeaderLayer = new SortHeaderLayer<T>(columnGroupHeaderLayer, sortModel, false);
I tried a different ordering of ther layers, but with any different order the ColumnGroupHeader dissapears. Anyone has an idea what i am doing wrong?
[Updated on: Wed, 12 June 2013 09:22] Report message to a moderator
|
|
|
|
|
|
Re: Problem with ColumGroupHeaderLayer and SortHeaderLayer [message #1062917 is a reply to message #1062896] |
Tue, 11 June 2013 11:50 |
Dirk Fauth Messages: 2902 Registered: July 2012 |
Senior Member |
|
|
Quote:The ColumnGroupHeaderLayer constructor expects a ColumnHeaderLayer so I suspect that inserting a SortHeaderLayer in between isn't supported
That's wrong! The ColumnGroupHeaderLayer constructor expects an ILayer as underlying layer. The parameter is named columnHeaderLayer which leads to missinterpretion!
Quote:I also tried composing both the SortHeaderLayer and the ColumnGroupHeaderLayer on top of the ColumnHeaderLayer (i.e parallel)
Of course this isn't working because the layers are stacked!
When I'm building my layer stack up like following, everything works as expected:
DefaultColumnHeaderDataLayer dataLayer = new DefaultColumnHeaderDataLayer(dataProvider);
ColumnHeaderLayer columnHeaderLayer = new ColumnHeaderLayer(dataLayer, bodyLayerStack, bodyLayerStack.getSelectionLayer());
SortHeaderLayer<T> sortHeaderLayer = new SortHeaderLayer<T>(
columnHeaderLayer,
new GlazedListsSortModel<T>(
bodyLayerStack.sortedList,
columnPropertyAccessor,
configRegistry,
dataLayer),
false);
ColumnGroupHeaderLayer columnGroupHeaderLayer = new ColumnGroupHeaderLayer(
sortHeaderLayer, bodyLayerStack.selectionLayer, model);
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.02202 seconds