CheckBoxEventHandler handler = new CheckBoxEventHandler(checkBox);
+ // label of checkbox should only be visible for assistive devices
+ checkBox.addStyleName("v-assistive-device-only-label");
+
// Sink events
checkBox.sinkBitlessEvent(BrowserEvents.MOUSEDOWN);
checkBox.sinkBitlessEvent(BrowserEvents.TOUCHSTART);
public void render(final RendererCellReference cell, final Boolean data,
CheckBox checkBox) {
checkBox.setValue(data, false);
+ // this should be a temp fix.
+ checkBox.setText("Selects row number " + getDOMRowIndex(cell) + ".");
checkBox.setEnabled(grid.isEnabled() && !grid.isEditorActive());
}
+ private int getDOMRowIndex(RendererCellReference cell){
+ // getRowIndex starts with zero, that's why we add an additional 1.
+ // getDOMRowIndex should include getHeaderRows as well, this number
+ // should be equals to aria-rowindex.
+ return cell.getGrid().getHeaderRowCount() + cell.getRowIndex() + 1;
+ }
+
@Override
public Collection<String> getConsumedEvents() {
final HashSet<String> events = new HashSet<>();
selectAllCheckBox = GWT.create(CheckBox.class);
selectAllCheckBox.setStylePrimaryName(
getStylePrimaryName() + SELECT_ALL_CHECKBOX_CLASSNAME);
+ // label of checkbox should only be visible for assistive devices
+ selectAllCheckBox.addStyleName("v-assistive-device-only-label");
selectAllCheckBox.addValueChangeHandler(event -> {
selected = event.getValue();
fireEvent(new SelectAllEvent<>(getSelectionModel(),
selected));
});
+ selectAllCheckBox.setText("Selects all rows of the table.");
selectAllCheckBox.setValue(selected);
addHeaderClickHandler(this::onHeaderClickEvent);