List of usage examples for com.google.gwt.user.cellview.client AbstractCellTable getColumn
public Column<T, ?> getColumn(int col)
From source file:com.bearsoft.gwt.ui.widgets.grid.GridSection.java
@Override protected void doSetColumnWidth(int index, String aValue) { if (index >= 0 && index < getColumnCount()) { super.doSetColumnWidth(index, aValue); if (columnsPartners != null) { for (AbstractCellTable<T> partner : columnsPartners) { if (index >= 0 && index < partner.getColumnCount()) { Column<T, ?> col = partner.getColumn(index); if (aValue == null) { partner.clearColumnWidth(col); } else { partner.setColumnWidth(col, aValue); }/*from w w w .j a va2 s .co m*/ } } } widthChanged(); } }
From source file:org.jbpm.console.ng.bd.client.util.DataGridUtils.java
License:Apache License
public static int getColumnWith(AbstractCellTable table, int col) { return getColumnWith(table, table.getColumn(col)); }
From source file:org.kaaproject.avro.ui.gwt.client.widget.grid.StringFilterHeaderBuilder.java
License:Apache License
@SuppressWarnings("unchecked") @Override// ww w. j av a 2s. com protected boolean buildHeaderOrFooterImpl() { boolean result = super.buildHeaderOrFooterImpl(); AbstractCellTable<T> table = getTable(); Header<?> prevHeader = getHeader(0); Style style = table.getResources().style(); StringBuilder classesBuilder = new StringBuilder(style.header()); classesBuilder.append(" ").append(Utils.avroUiStyle.fieldWidget()); TableRowBuilder tr = startRow(); for (int i = 0; i < table.getColumnCount(); i++) { appendExtraStyles(prevHeader, classesBuilder); TableCellBuilder th = tr.startTH().className(classesBuilder.toString()); Column<T, ?> column = table.getColumn(i); Header<?> header = null; if (column instanceof FiltrableStringColumn) { StringFilterHeader filterHeader = new StringFilterHeader(grid, (FiltrableStringColumn<T>) column, new Integer(i)); Set<String> headerEvents = filterHeader.getCell().getConsumedEvents(); Set<String> consumedEvents = new HashSet<String>(); if (headerEvents != null) { consumedEvents.addAll(headerEvents); } sinkEvents(table, consumedEvents); header = filterHeader; } else { header = new SafeHtmlHeader(SafeHtmlUtils.fromSafeConstant("")); } Context context = new Context(0, 0, header.getKey()); renderHeader(th, context, header); th.endTH(); } tr.endTR(); return result; }
From source file:org.roda.wui.common.client.widgets.wcag.AccessibleHeaderOrFooterBuilder.java
@Override protected boolean buildHeaderOrFooterImpl() { AbstractCellTable<T> table = getTable(); boolean isFooter = isBuildingFooter(); // Early exit if there aren't any columns to render. int columnCount = table.getColumnCount(); if (columnCount == 0) { // Nothing to render return false; }//from w ww.ja va 2 s .c om // Early exit if there aren't any headers in the columns to render. boolean hasHeader = false; for (int i = 0; i < columnCount; i++) { if (getHeader(i) != null) { hasHeader = true; break; } } if (!hasHeader) { return false; } // Get information about the sorted column. ColumnSortList sortList = table.getColumnSortList(); ColumnSortInfo sortedInfo = (sortList.size() == 0) ? null : sortList.get(0); Column<?, ?> sortedColumn = (sortedInfo == null) ? null : sortedInfo.getColumn(); boolean isSortAscending = (sortedInfo == null) ? false : sortedInfo.isAscending(); // Get the common style names. Style style = getTable().getResources().style(); String className = isBuildingFooter() ? style.footer() : style.header(); String sortableStyle = " " + style.sortableHeader(); String sortedStyle = " " + (isSortAscending ? style.sortedHeaderAscending() : style.sortedHeaderDescending()); // Setup the first column. Header<?> prevHeader = getHeader(0); Column<T, ?> column = getTable().getColumn(0); int prevColspan = 1; boolean isSortable = false; boolean isSorted = false; StringBuilder classesBuilder = new StringBuilder(className); classesBuilder.append(" " + (isFooter ? style.firstColumnFooter() : style.firstColumnHeader())); if (!isFooter && column.isSortable()) { isSortable = true; isSorted = (column == sortedColumn); } // Loop through all column headers. TableRowBuilder tr = startRow(); int curColumn; for (curColumn = 1; curColumn < columnCount; curColumn++) { Header<?> header = getHeader(curColumn); if (header != prevHeader) { // The header has changed, so append the previous one. if (isSortable) { classesBuilder.append(sortableStyle); } if (isSorted) { classesBuilder.append(sortedStyle); } appendExtraStyles(prevHeader, classesBuilder); // Render the header. TableCellBuilder th = tr.startTH().colSpan(prevColspan).className(classesBuilder.toString()); enableColumnHandlers(th, column); if (prevHeader != null) { // Build the header. Context context = new Context(0, curColumn - prevColspan, prevHeader.getKey()); // Add div element with aria button role if (isSortable) { // TODO: Figure out aria-label and translation of label text th.attribute("role", "button"); th.tabIndex(-1); } updatedRenderSortableHeader(th, context, prevHeader, isSorted, isSortAscending); } th.endTH(); // Reset the previous header. prevHeader = header; prevColspan = 1; classesBuilder = new StringBuilder(className); isSortable = false; isSorted = false; } else { // Increment the colspan if the headers == each other. prevColspan++; } // Update the sorted state. column = table.getColumn(curColumn); if (!isFooter && column.isSortable()) { isSortable = true; isSorted = (column == sortedColumn); } } // Append the last header. if (isSortable) { classesBuilder.append(sortableStyle); } if (isSorted) { classesBuilder.append(sortedStyle); } // The first and last columns could be the same column. classesBuilder.append(" ").append(isFooter ? style.lastColumnFooter() : style.lastColumnHeader()); appendExtraStyles(prevHeader, classesBuilder); // Render the last header. TableCellBuilder th = tr.startTH().colSpan(prevColspan).className(classesBuilder.toString()); enableColumnHandlers(th, column); if (prevHeader != null) { Context context = new Context(0, curColumn - prevColspan, prevHeader.getKey()); updatedRenderSortableHeader(th, context, prevHeader, isSorted, isSortAscending); } th.endTH(); // End the row. tr.endTR(); return true; }