List of usage examples for com.google.gwt.gen2.table.client ScrollTable setColumnSortable
public void setColumnSortable(int column, boolean sortable)
From source file:edu.caltech.ipac.firefly.ui.table.TableOptions.java
private ScrollTable makeColsTable(final BasicPagingTable table) { final FixedWidthFlexTable header = new FixedWidthFlexTable(); header.setHTML(0, 0, "Column"); header.setWidget(0, 1, selectAllCheckBox); selectAllCheckBox.addClickHandler(new ClickHandler() { public void onClick(ClickEvent ev) { boolean hasSel = false; for (Map.Entry<ColDef, CheckBox> entry : checkBoxes.entrySet()) { if (entry.getValue().getValue()) { hasSel = true;// ww w . j a v a 2s .co m break; } } if (selectAllCheckBox.getValue() && !hasSel) { for (Map.Entry<ColDef, CheckBox> entry : checkBoxes.entrySet()) { entry.getValue().setValue(true); } } else { for (Map.Entry<ColDef, CheckBox> entry : checkBoxes.entrySet()) { entry.getValue().setValue(false); } selectAllCheckBox.setValue(false); } applyChanges(); } }); // final SortableGrid.ColumnSorter[] origSorter = new SortableGrid.ColumnSorter[1]; @SuppressWarnings("deprecation") final FixedWidthGrid data = new FixedWidthGrid(0, 2); data.unsinkEvents(Event.ONMOUSEOVER); data.setSelectionEnabled(false); final ScrollTable view = new ScrollTable(data, header, new BasicTable.Images()); FlexTable.FlexCellFormatter formatter = header.getFlexCellFormatter(); formatter.setHorizontalAlignment(0, 1, HasHorizontalAlignment.ALIGN_CENTER); view.setMaximumColumnWidth(1, 35); view.setMinimumColumnWidth(1, 35); view.setColumnSortable(1, false); final DefaultTableDefinition<TableData.Row> tdef = (DefaultTableDefinition<TableData.Row>) table .getTableDefinition(); int cRowIdx = 0; for (int i = 0; i < tdef.getColumnDefinitionCount(); i++) { final ColDef col = (ColDef) tdef.getColumnDefinition(i); if (!col.isImmutable()) { data.insertRow(cRowIdx); data.setHTML(cRowIdx, 0, col.getTitle()); CheckBox cb = new CheckBox(); cb.setValue(tdef.isColumnVisible(col)); checkBoxes.put(col, cb); data.setWidget(cRowIdx, 1, cb); data.getCellFormatter().setAlignment(cRowIdx, 1, HasHorizontalAlignment.ALIGN_CENTER, HasVerticalAlignment.ALIGN_MIDDLE); cRowIdx++; cb.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { applyChanges(); } }); } } return view; }