public Column<T_ROW, T_CELL_VAL> build() {
        Objects.requireNonNull(valueExtractor);
        Objects.requireNonNull(cellSupplier);

        final Column<T_ROW, T_CELL_VAL> column;
        if (isSorted) {
            // Explicit generics typing for GWT
            column = createSortableColumn();
        } else {
            // Explicit generics typing for GWT
            column = createNonSortableColumn();
        }
        if (horizontalAlignment != null) {
            column.setHorizontalAlignment(horizontalAlignment);
        }

        if (verticalAlignment != null) {
            column.setVerticalAlignment(verticalAlignment);
        }

        if (fieldUpdater != null) {
            column.setFieldUpdater(fieldUpdater);
        }

        column.setDefaultSortAscending(isDefaultSortAscending);

        return column;
    }
Add a class to the cell if it is not enabled, so enabled and disabled rows appear
differently.

@param enabledFunction A function to return true if the row is enabled.
stroom-core-client-widget/src/main/java/stroom/data/grid/client/ColumnBuilder.java