Scrolling changing indexes [message #1835602] |
Tue, 08 December 2020 10:45 |
Alexandra Tritean Messages: 37 Registered: March 2020 |
Member |
|
|
Hello,
I'm facing an issue when scrolling horizontally in a custom table.
In the first picture attached, the 'Type' column of the table holds a combobox, but after scrolling horizontally, the combobox is also 'moved' to the columns from the right (the second picture attached). So, while I'm scrolling, the combo keeps 'moving' left/right (the gif attached).
The relevant code snippets:
BodyLayerStack bodyLayerStack = new BodyLayerStack(this.attributes, columnPropertyAccessor);
bodyLayerStack.setConfigLabelAccumulator(newColumnLabelAccumulator());
IDataProvider columnHeaderDataProvider = new DefaultColumnHeaderDataProvider(propertyNames, propertyToLabelMap);
DataLayer columnHeaderDataLayer = new DefaultColumnHeaderDataLayer(columnHeaderDataProvider);
ILayer columnHeaderLayer = new ColumnHeaderLayer(columnHeaderDataLayer, bodyLayerStack, bodyLayerStack.getSelectionLayer());
SortHeaderLayer sortHeaderLayer = new SortHeaderLayer<>(columnHeaderLayer, new GlazedListsSortModel<>( bodyLayerStack.getSortedList(), columnPropertyAccessor, configRegistry, columnHeaderDataLayer));
FilterRowHeaderComposite filterRowHeaderLayer = new FilterRowHeaderComposite<>(new DefaultGlazedListsFilterStrategy<>(bodyLayerStack.getFilterList(), columnPropertyAccessor, configRegistry),
sortHeaderLayer, columnHeaderDataLayer.getDataProvider(), configRegistry);
IDataProvider rowHeaderDataProvider = new DefaultRowHeaderDataProvider(bodyLayerStack.getBodyDataProvider());
DataLayer rowHeaderDataLayer = new DefaultRowHeaderDataLayer(rowHeaderDataProvider);
ILayer rowHeaderLayer = new RowHeaderLayer(rowHeaderDataLayer, bodyLayerStack,
bodyLayerStack.getSelectionLayer());
IDataProvider cornerDataProvider = new DefaultCornerDataProvider(columnHeaderDataProvider, rowHeaderDataProvider);
DataLayer cornerDataLayer = new DataLayer(cornerDataProvider);
ILayer cornerLayer = new CornerLayer(cornerDataLayer, rowHeaderLayer, filterRowHeaderLayer);
GridLayer gridLayer = new GridLayer(bodyLayerStack, filterRowHeaderLayer, rowHeaderLayer, cornerLayer);
NatTable natTable = new NatTable(gridPanel, gridLayer, false);
natTable.setConfigRegistry(configRegistry);
natTable.addConfiguration(new DefaultNatTableStyleConfiguration());
natTable.addConfiguration(new FilterRowConfiguration());
natTable.addConfiguration(new SingleClickSortConfiguration());
natTable.addConfiguration(new EditableCellsConfiguration(bodyLayerStack.bodyDataProvider));
DefaultNatTableStyleConfiguration style = new DefaultNatTableStyleConfiguration();
style.hAlign = HorizontalAlignmentEnum.LEFT;
natTable.addConfiguration(style);
natTable.configure();
GridDataFactory.fillDefaults().grab(true, true).applyTo(natTable);
natTable.registerCommandHandler(new DisplayPersistenceDialogCommandHandler(natTable));
class BodyLayerStack extends AbstractLayerTransform {
private final FilterList filterList;
private final SortedList sortedList;
private final IDataProvider bodyDataProvider;
private final SelectionLayer selectionLayer;
public BodyLayerStack(List values, IColumnPropertyAccessor columnPropertyAccessor) {
EventList eventList = GlazedLists.eventList(values);
TransformedList rowObjectsGlazedList = GlazedLists.threadSafeList(eventList);
this.sortedList = new SortedList<>(rowObjectsGlazedList, null);
this.filterList = new FilterList<>(getSortedList());
this.bodyDataProvider = new ListDataProvider<>(this.filterList, new CompleteDataProvider());
DataLayer bodyDataLayer = new DataLayer(getBodyDataProvider());
GlazedListsEventLayer glazedListsEventLayer = new GlazedListsEventLayer<>(bodyDataLayer, this.filterList);
bodyDataLayer.registerCommandHandler(new GlazedListsRowObjectDeleteCommandHandler<>(this.filterList));
this.selectionLayer = new SelectionLayer(glazedListsEventLayer);
ViewportLayer viewportLayer = new ViewportLayer(getSelectionLayer());
setUnderlyingLayer(viewportLayer);
}
}
What can be the cause of this behavior? Did I configured something incorrectly?
Thank you!
Kind Regards,
Alexandra
-
Attachment: Capture1.PNG
(Size: 12.29KB, Downloaded 46 times) -
Attachment: Capture2.PNG
(Size: 11.59KB, Downloaded 44 times) -
Attachment: Scrolling.gif
(Size: 879.45KB, Downloaded 44 times)
|
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03353 seconds