List of usage examples for com.google.gwt.aria.client Roles getRowRole
public static RowRole getRowRole()
From source file:org.unitime.timetable.gwt.client.widgets.UniTimeTable.java
License:Apache License
public void setRow(int row, T data, List<? extends Widget> widgets) { SmartTableRow<T> oldRow = getSmartRow(row); if (oldRow != null && oldRow.getData() != null) { DataChangedEvent<T> event = new DataChangedEvent<T>(oldRow.getData(), row); for (DataChangedListener<T> listener : iDataChangedListeners) listener.onDataRemoved(event); }/* ww w . j a v a 2 s. c o m*/ SmartTableRow smartRow = new SmartTableRow(data); int col = 0, x = 0; for (Widget widget : widgets) { SmartTableCell cell = new SmartTableCell(smartRow, widget); int colspan = 1; if (widget instanceof HasColSpan) { colspan = ((HasColSpan) widget).getColSpan(); getFlexCellFormatter().setColSpan(row, col, colspan); } if (widget instanceof HasStyleName && ((HasStyleName) widget).getStyleName() != null) getFlexCellFormatter().setStyleName(row, col, ((HasStyleName) widget).getStyleName()); if (widget instanceof HasAdditionalStyleNames) { List<String> styleNames = ((HasAdditionalStyleNames) widget).getAdditionalStyleNames(); if (styleNames != null) for (String styleName : styleNames) getFlexCellFormatter().addStyleName(row, col, styleName); } if (widget instanceof HasCellAlignment) getFlexCellFormatter().setHorizontalAlignment(row, col, ((HasCellAlignment) widget).getCellAlignment()); if (widget instanceof HasVerticalCellAlignment) getFlexCellFormatter().setVerticalAlignment(row, col, ((HasVerticalCellAlignment) widget).getVerticalCellAlignment()); if (widget instanceof HasColumn) ((HasColumn) widget).setColumn(col); setWidget(row, col, cell); if (widget instanceof UniTimeTableHeader) { Roles.getColumnheaderRole().set(getCellFormatter().getElement(row, col)); } else { Roles.getGridcellRole().set(getCellFormatter().getElement(row, col)); } x += colspan; if (row > 0) { if (colspan == 1) { getCellFormatter().setVisible(row, col, isColumnVisible(x - 1)); } else { int span = 0; for (int h = x - colspan; h < x; h++) if (isColumnVisible(h)) span++; getCellFormatter().setVisible(row, col, span > 0); getFlexCellFormatter().setColSpan(row, col, Math.max(1, span)); } } col++; } Roles.getRowRole().set(getRowFormatter().getElement(row)); if (data != null) { DataChangedEvent<T> event = new DataChangedEvent<T>(data, row); for (DataChangedListener<T> listener : iDataChangedListeners) listener.onDataInserted(event); } }
From source file:org.unitime.timetable.gwt.client.widgets.WebTable.java
License:Apache License
public void setHeader(Row... header) { iHeader = header;// w ww. j a va 2 s . co m for (int i = 0; i < header.length; i++) { for (int j = 0; j < header[i].getNrCells(); j++) { Cell cell = header[i].getCell(j); if (cell.getWidget() == null) { iTable.setHTML(i, j, (cell.getValue() == null || cell.getValue().isEmpty() ? " " : cell.getValue())); if (cell.getAriaLabel() != null && !cell.getAriaLabel().isEmpty()) Roles.getGridcellRole().setAriaLabelProperty(iTable.getCellFormatter().getElement(i, j), cell.getAriaLabel()); } else iTable.setWidget(i, j, cell.getWidget()); iTable.getFlexCellFormatter().setWordWrap(i, j, cell.getWordWrap()); iTable.getFlexCellFormatter().setStyleName(i, j, (cell.getStyleName() == null ? "unitime-TableHeader" : cell.getStyleName())); iTable.getFlexCellFormatter().setWidth(i, j, (cell.getWidth() == null ? (100 / header.length) + "%" : cell.getWidth())); iTable.getFlexCellFormatter().setColSpan(i, j, cell.getColSpan()); iTable.getFlexCellFormatter().setVerticalAlignment(i, j, cell.getVerticalAlignment()); iTable.getFlexCellFormatter().setHorizontalAlignment(i, j, cell.getHorizontalAlignment()); iTable.getFlexCellFormatter().getElement(i, j).setTitle(cell.getTitle()); Roles.getColumnheaderRole().set(iTable.getCellFormatter().getElement(i, j)); } Roles.getRowRole().set(iTable.getRowFormatter().getElement(i)); if (header[i].getAriaLabel() != null && !header[i].getAriaLabel().isEmpty()) { iTable.setWidget(i, header[i].getNrCells(), new AriaHiddenLabel(header[i].getAriaLabel())); } else { iTable.setHTML(i, header[i].getNrCells(), ""); } Roles.getRowheaderRole().set(iTable.getCellFormatter().getElement(i, header[i].getNrCells())); iTable.getFlexCellFormatter().setStyleName(i, header[i].getNrCells(), "unitime-TableHeader"); iTable.getFlexCellFormatter().addStyleName(i, header[i].getNrCells(), "rowheader"); } }
From source file:org.unitime.timetable.gwt.client.widgets.WebTable.java
License:Apache License
public void setData(Row... rows) { setSelectedRow(-1);//from ww w . j av a 2 s . c o m if (rows == null || rows.length == 0) { clearData(true); return; } clearData(rows.length); iRows = rows; for (int i = 0; i < iRows.length; i++) { if (iRows[i] == null) continue; iRows[i].setRowIdx(i); iRows[i].setTable(this); iTable.getRowFormatter().setStyleName(i + getHeaderRowsCount(), null); for (int j = 0; j < iRows[i].getNrCells(); j++) { Cell cell = iRows[i].getCell(j); cell.setColIdx(j); cell.setRow(iRows[i]); if (cell.getWidget() == null) { iTable.setHTML(i + getHeaderRowsCount(), j, (cell.getValue() == null || cell.getValue().isEmpty() ? " " : cell.getValue())); if (cell.getAriaLabel() != null && !cell.getAriaLabel().isEmpty()) Roles.getGridcellRole().setAriaLabelProperty( iTable.getCellFormatter().getElement(i + getHeaderRowsCount(), j), cell.getAriaLabel()); } else iTable.setWidget(i + getHeaderRowsCount(), j, cell.getWidget()); iTable.getFlexCellFormatter().setWordWrap(i + getHeaderRowsCount(), j, cell.getWordWrap()); iTable.getFlexCellFormatter().setColSpan(i + getHeaderRowsCount(), j, cell.getColSpan()); iTable.getFlexCellFormatter().setStyleName(i + getHeaderRowsCount(), j, cell.getStyleName()); iTable.getFlexCellFormatter().setWidth(i + getHeaderRowsCount(), j, cell.getWidth()); iTable.getFlexCellFormatter().setVerticalAlignment(i + getHeaderRowsCount(), j, cell.getVerticalAlignment()); iTable.getFlexCellFormatter().setHorizontalAlignment(i + getHeaderRowsCount(), j, cell.getHorizontalAlignment()); iTable.getFlexCellFormatter().getElement(i + getHeaderRowsCount(), j).setTitle(cell.getTitle()); Roles.getGridcellRole().set(iTable.getCellFormatter().getElement(i + getHeaderRowsCount(), j)); } Roles.getRowRole().set(iTable.getRowFormatter().getElement(i + getHeaderRowsCount())); for (int j = iTable.getCellCount(i + getHeaderRowsCount()) - 1; j >= iRows[i].getNrCells(); j--) iTable.removeCell(i + getHeaderRowsCount(), j); if (iRows[i].getAriaLabel() != null && !iRows[i].getAriaLabel().isEmpty()) { iTable.setWidget(i + getHeaderRowsCount(), iRows[i].getNrCells(), new AriaHiddenLabel(iRows[i].getAriaLabel())); } else { iTable.setHTML(i + getHeaderRowsCount(), iRows[i].getNrCells(), ""); } Roles.getRowheaderRole() .set(iTable.getCellFormatter().getElement(i + getHeaderRowsCount(), iRows[i].getNrCells())); iTable.getFlexCellFormatter().setStyleName(i + getHeaderRowsCount(), iRows[i].getNrCells(), iRows[i].getCell(iRows[i].getNrCells() - 1).getStyleName()); iTable.getFlexCellFormatter().addStyleName(i + getHeaderRowsCount(), iRows[i].getNrCells(), "rowheader"); } }