if (selection instanceof HierarchicalNodeSelection) {
checkbox.setTriStateAllowed(true);
checkbox.setStateList(Arrays.asList(SelectBooleanCheckbox.SELECTED_STATE, SelectBooleanCheckbox.UNSELECTED_STATE));
}
checkbox.setSelected(false);
checkbox.encodeAll(context);
} else {
writer.startElement("input", component);
writer.writeAttribute("type", selectionMode != AbstractTableSelection.Mode.SINGLE ? "checkbox" : "radio", null);
Styles.renderStyleClasses(context, component);