private void addColumn(final String name,
                           final int width,
                           final Function<ContentTemplate, String> valueFunc) {

        final Column<ContentTemplate, SafeHtml> expressionColumn = new Column<ContentTemplate, SafeHtml>(
                new SafeHtmlCell()) {
            @Override
            public SafeHtml getValue(final ContentTemplate rule) {
                return getSafeHtml(valueFunc.apply(rule), rule);
            }
        };
        dataGrid.addResizableColumn(expressionColumn, name, width);
    }
Add the columns to the table.
stroom-core-client/src/main/java/stroom/receive/content/client/presenter/ContentTemplateListPresenter.java