private ColumnSort getSortForColumn() { GridSortModel sortModel = gridModel.getSortModel(); String columnId = columnModel.getId(); return sortModel.getColumnSort(columnId); }
/** * This method will set all the Sorting stuffs, thanks to sSortDir and iSortCol DataTable parameters, coming from the request */ public void prepareResponse(GridDataSource source){ String sortingCols = request.getParameter(DataTableConstants.SORTING_COLS); if(InternalUtils.isNonBlank(sortingCols)){ int nbSortingCols = Integer.parseInt(sortingCols); String sord = request.getParameter(DataTableConstants.SORT_DIR+"0"); String sidx = request.getParameter(DataTableConstants.SORT_COL+"0"); if(nbSortingCols>0) { List<String> names = model.getPropertyNames(); int indexProperty = Integer.parseInt(sidx); String propName = names.get(indexProperty); ColumnSort colSort =sortModel.getColumnSort(propName); if(!(InternalUtils.isNonBlank(colSort.name()) && colSort.name().startsWith(sord.toUpperCase()))) sortModel.updateSort(propName); } } }
@SetupRender void setupRender() { GridSortModel sortModel = grid.getSortModel(); if (sortModel.getSortConstraints().isEmpty()) { while (sortModel.getColumnSort(sortColumn) != sortOrder) { sortModel.updateSort(sortColumn); } } } }
void onBeginRenderFromColumn(MarkupWriter writer) { String id = gridModel.getDataModel().get(propertyName).getId(); if (!lean) { writer.attributes("data-grid-property", id); } switch (gridModel.getSortModel().getColumnSort(id)) { case ASCENDING: writer.attributes("data-grid-column-sort", "ascending"); break; case DESCENDING: writer.attributes("data-grid-column-sort", "descending"); break; default: } }