How to re call a CellStyleGenerator?

I have a Table with a CellStyleGenerator that return a style (a color) depending the value of a propertyID, but I can’t find out how to refresh, after modifing the value of this property.
clean the table ContainerDataSource (removeAllItems) but this doesn’t trigger/fire anything that make to re-evaluate and change the color of the row.
I tried these but nothing work:

t.refreshRowCache() //also tried to readd the cell generator t.setCellStyleGenerator(null); t.setCellStyleGenerator(colorCellStyleGenerator); oddly the color are refreshed if I make some Window visible, I move the window aside and I can see how the row/s color changed!


We do the same, and it works fine.
How do you modify the property? Normally, if the table picks up the modifaction (that is, it’s updated in a way that the underlying container “sees” the change), the CellStyleGenerator is run automatically.

If that doesn’t work, refreshRowCache() should do the trick.

Can you post a self-contained example? Without more info it’s hard to say what’s going on here.


table.setCellStyleGenerator( new Table.CellStyleGenerator() {
        public String getStyle(Table source, Object itemId, Object propertyId) {
            PlanillaTrasladoDetalle ptd = (PlanillaTrasladoDetalle) source.getItem(itemId).getItemProperty(0).getValue();
            return getColorByEstado(source, ptd.getTraslado());


//right click on row table, select one option of ContextMenu
//retrieving the object in the propertyItem 0
//editing the object in some way, merge, get it back refreshed from DAO
//population of table again

the propertyItem to be evaluated is always in “0”, there it is my object “planillaTrasladoDetalle” which is edited. After any modification, the hole table is reloaded, the container items are moved and populated again with the refreshed objected retrived from the DAO