import org.eclipse.nebula.widgets.nattable.tree.command.TreeCollapseAllCommand;
import org.eclipse.nebula.widgets.nattable.tree.command.TreeExpandAllCommand;
import org.eclipse.nebula.widgets.nattable.ui.menu.AbstractHeaderMenuConfiguration;
-import org.eclipse.nebula.widgets.nattable.ui.menu.HeaderMenuConfiguration;
import org.eclipse.nebula.widgets.nattable.ui.menu.PopupMenuBuilder;
import org.eclipse.nebula.widgets.nattable.util.GUIHelper;
import org.eclipse.nebula.widgets.nattable.viewport.ViewportLayer;
columnHeaderStyle.font = GUIHelper.getFont(new FontData("Verdana", 8, SWT.BOLD));
natTable.addConfiguration(columnHeaderStyle);
- // Add popup menu - build your own popup menu using the PopupMenuBuilder
- natTable.addConfiguration(new HeaderMenuConfiguration(natTable));
}
private void toggleTreeFlat(boolean isTree, Button btnToggleFlat, Button btnToggleTree, Button btnCollapseAll, Button btnExpandAll) {
GlazedListTreeData treeData = new GlazedListTreeData<>(treeList);
ITreeRowModel treeRowModel = new GlazedListTreeRowModel<>(treeData);
- RowReorderLayer rowReorderLayer = new RowReorderLayer(eventLayer);
- ColumnReorderLayer columnReorderLayer = new ColumnReorderLayer(rowReorderLayer);
- ColumnHideShowLayer columnHideShowLayer = new ColumnHideShowLayer(columnReorderLayer);
- RowHideShowLayer rowHideShowLayer = new RowHideShowLayer(columnHideShowLayer);
- SelectionLayer selectionLayer = new SelectionLayer(rowHideShowLayer);
- TreeLayer treeLayer = new TreeLayer(selectionLayer, treeRowModel);
- ViewportLayer viewportLayer = treeView?new ViewportLayer(treeLayer):new ViewportLayer(selectionLayer);
+ ColumnReorderLayer columnReorderLayer;
+ ColumnHideShowLayer columnHideShowLayer;
+ SelectionLayer selectionLayer;
+ TreeLayer treeLayer;
+ ViewportLayer viewportLayer;
+ if(treeView){
+ columnReorderLayer = new ColumnReorderLayer(eventLayer);
+ columnHideShowLayer = new ColumnHideShowLayer(columnReorderLayer);
+ selectionLayer = new SelectionLayer(columnHideShowLayer);
+ treeLayer = new TreeLayer(selectionLayer, treeRowModel);
+ viewportLayer = treeView?new ViewportLayer(treeLayer):new ViewportLayer(selectionLayer);
+ }
+ else{
+ RowReorderLayer rowReorderLayer = new RowReorderLayer(eventLayer);
+ columnReorderLayer = new ColumnReorderLayer(rowReorderLayer);
+ columnHideShowLayer = new ColumnHideShowLayer(columnReorderLayer);
+ RowHideShowLayer rowHideShowLayer = new RowHideShowLayer(columnHideShowLayer);
+ selectionLayer = new SelectionLayer(rowHideShowLayer);
+ treeLayer = new TreeLayer(selectionLayer, treeRowModel);
+ viewportLayer = treeView?new ViewportLayer(treeLayer):new ViewportLayer(selectionLayer);
+ }
// create a standalone FixedSummaryRowLayer
// since the summary row should be fixed at the top of the body
// override the default sort configuration and change the mouse bindings
// to sort on a single click
- //currently removed sorting because of using the TreeConfiguration
- natTable.addConfiguration(new SingleClickSortConfiguration());
+ if(!treeView){
+ natTable.addConfiguration(new SingleClickSortConfiguration());
+ }
// add the header menu configuration for adding the column header menu
// with hide/show actions
.withShowAllColumnsMenuItem();
}
- @Override
- protected PopupMenuBuilder createRowHeaderMenu(NatTable natTable) {
- return super.createRowHeaderMenu(natTable)
- .withHideRowMenuItem()
- .withShowAllRowsMenuItem();
- }
-
- @Override
- protected PopupMenuBuilder createCornerMenu(NatTable natTable) {
- return super.createCornerMenu(natTable)
- .withShowAllColumnsMenuItem()
- .withShowAllRowsMenuItem();
- }
});
Style cellStyle = new Style();