class ColumnPicker extends UberfireColumnPicker<T> {

    public List<GridColumnPreference> getColumnsState() {
        List<GridColumnPreference> state = new ArrayList<GridColumnPreference>();
        for (final ColumnMeta<T> cm : columnMetaList) {
            if (cm.isVisible()) {
                state.add(new GridColumnPreference(getColumnStoreName(cm),
                                                   dataGrid.getColumnIndex(cm.getColumn()),
                                                   dataGrid.getColumnWidth(cm.getColumn())));
            }
        }
        return state;
    }

    public  ColumnPicker(DataGrid<T> dataGrid,
                        GridPreferencesStore gridPreferences);
    public  ColumnPicker(DataGrid<T> dataGrid);

}