protected int createDataGridHierarchicalRow(TreeDataGrid dataGrid, TreeDataGridItems<Entity> treeDataGridItems, List<DataGrid.Column> columns, int startColumn, int rowNumber, Entity item) { if (!checkIsRowNumberExceed(rowNumber)) { createDataGridRow(dataGrid, columns, startColumn, ++rowNumber, item.getId()); Collection<Entity> children = treeDataGridItems.getChildren(item).collect(Collectors.toList()); for (Entity child: children) { rowNumber = createDataGridHierarchicalRow(dataGrid, treeDataGridItems, columns, startColumn, rowNumber, child); } } return rowNumber; }
@Override public Stream<T> fetchChildren(HierarchicalQuery<T, SerializablePredicate<T>> query) { if (dataGridItems.getState() == BindingState.INACTIVE) { return Stream.empty(); } return getTreeDataGridSource().getChildren(query.getParent()) .skip(query.getOffset()) .limit(query.getLimit()); }
@Override public void expandAll() { if (getItems() != null) { expandRecursively(getItems().getChildren(null), Integer.MAX_VALUE); } }
@Override public void collapseAll() { if (getItems() != null) { collapseRecursively(getItems().getChildren(null), Integer.MAX_VALUE); } }
@SuppressWarnings("unchecked") TreeDataGridItems<Entity> treeDataGridItems = (TreeDataGridItems) dataGridSource; List<Entity> items = treeDataGridItems.getChildren(null).collect(Collectors.toList()); for (Entity item: items) { if (checkIsRowNumberExceed(r)) {