How to set/disable readonly for whole Table column components in runtime

I have combo with currency selection.
I have a Table:

        final BeanItemContainer<PurchaseLine> goodsContainer =
                new BeanItemContainer<PurchaseLine>(PurchaseLine.class, purchase.getLines());
        goodsTable.setEditable(true);
        goodsTable.setTableFieldFactory(goodsTableFactory);
        goodsTable.setContainerDataSource(goodsContainer);

tableFieldFactory is fairy simple:

    private class GoodsTableFactory extends DefaultFieldFactory {
            @Override
            public Field createField(Container container, Object itemId, Object propertyId, Component uiContext)
            {
                Field field;
                ...
                } else if ("priceUSD".equals(propertyId)) {
                    TextField textField = new TextField();
                    textField.setReadOnly(!((PurchaseLine)itemId).getPurchase().getCurrency().equals(Currency.USD));
                    field = textField;
                } else {
                ...
                return field;
            }
        }

When user chooses USD currency all those priceUSD TextFields in all rows must become writable. And otherwise - become readonly when currency was set other than USD. Of course user can change currency when table rows are rendered.
How this can be implemented? Please write correct keywords. Digging Table sources gave nothing at the moment…