public void refreshRowState() {
Rows rows = getRows(_begin);
int r = 1;
for(int i = 0; i < rows.size(); ++i, ++r) {
Row row = rows.getRow(i);
_table.getRowFormatter().setStyleName(r, STYLE_ROW);
_table.getRowFormatter().addStyleName(r, i % 2 == 0 ? STYLE_ROW_EVEN : STYLE_ROW_ODD);
if(row.hasState(Row.State.SELECT)) _table.getRowFormatter().addStyleName(r, STYLE_ROW_SELECT);
for(int j = 0, c = 0; j < _layout.getTotalColumnCount(); ++j) {
Column column = _layout.getColumn(j);
if(column.isVisible()) {
_table.getCellFormatter().removeStyleName(r, c, STYLE_COLUMN_SELECT);
_table.getCellFormatter().removeStyleName(r, c, STYLE_CELL_SELECT);
if(column.hasState(Column.State.SELECT)) {
_table.getCellFormatter().addStyleName(r, c, STYLE_COLUMN_SELECT);
if(row.hasState(Row.State.SELECT)) _table.getCellFormatter().addStyleName(r, c, STYLE_CELL_SELECT);
}
c++;
}
}
}