Here is a dummy example:
public class CheckBoxColumnGenerator implements Table.ColumnGenerator {
@Override
public Object generateCell(Table source, Object itemId, Object columnId) {
Property<?> prop = source.getItem(itemId).getItemProperty(columnId);
return new CheckBox(null, prop);
}
}
...
Table table = new Table();
table.addContainerProperty("checkbox", Boolean.class, null);
table.addContainerProperty("label", String.class, null);
table.addItem(new Object[] { true, "row#1" }, 1);
table.addItem(new Object[] { false, "row#2" }, 2);
table.addItem(new Object[] { true, "row#3" }, 3);
table.addItem(new Object[] { false, "row#4" }, 4);
table.addGeneratedColumn("checkbox", new CheckBoxColumnGenerator());
Then:
for (Object itemId : table.getItemIds()) {
table.getItem(itemId).getItemProperty("checkbox").setValue(true);
}