Example usage for com.google.gwt.user.cellview.client Column Column

List of usage examples for com.google.gwt.user.cellview.client Column Column

Introduction

In this page you can find the example usage for com.google.gwt.user.cellview.client Column Column.

Prototype

public Column(Cell<C> cell) 

Source Link

Document

Construct a new Column with a given Cell .

Usage

From source file:com.codenvy.ide.ext.github.client.importer.page.GithubImporterPageViewImpl.java

License:Open Source License

/**
 * Creates table what contains list of available repositories.
 *
 * @param ideResources//w w w  .  ja  v a2  s  . c  o  m
 */
private void createRepositoriesTable(@Nonnull Resources ideResources) {
    repositories = new CellTable<ProjectData>(15, ideResources);

    Column<ProjectData, ImageResource> iconColumn = new Column<ProjectData, ImageResource>(
            new ImageResourceCell()) {
        @Override
        public ImageResource getValue(ProjectData item) {
            return resources.project();
        }
    };

    Column<ProjectData, SafeHtml> repositoryColumn = new Column<ProjectData, SafeHtml>(new SafeHtmlCell()) {
        @Override
        public SafeHtml getValue(final ProjectData item) {
            return SafeHtmlUtils.fromString(item.getName());
        }
    };

    Column<ProjectData, SafeHtml> descriptionColumn = new Column<ProjectData, SafeHtml>(new SafeHtmlCell()) {
        @Override
        public SafeHtml getValue(final ProjectData item) {
            return new SafeHtmlBuilder().appendHtmlConstant("<span>").appendEscaped(item.getDescription())
                    .appendHtmlConstant("</span>").toSafeHtml();
        }
    };

    repositories.addColumn(iconColumn, SafeHtmlUtils.fromSafeConstant("<br/>"));
    repositories.setColumnWidth(iconColumn, 28, Style.Unit.PX);

    repositories.addColumn(repositoryColumn, locale.samplesListRepositoryColumn());
    repositories.addColumn(descriptionColumn, locale.samplesListDescriptionColumn());

    // don't show loading indicator
    repositories.setLoadingIndicator(null);

    final SingleSelectionModel<ProjectData> selectionModel = new SingleSelectionModel<ProjectData>();
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        @Override
        public void onSelectionChange(SelectionChangeEvent event) {
            ProjectData selectedObject = selectionModel.getSelectedObject();
            delegate.onRepositorySelected(selectedObject);
        }
    });
    repositories.setSelectionModel(selectionModel);
}

From source file:com.codenvy.ide.ext.github.client.projectimporter.importerpage.GithubImporterPageViewImpl.java

License:Open Source License

/** Creates table what contains list of available repositories.
 * @param ideResources*///from  w  w w  . j a  v a  2  s  .co m
private void createRepositoriesTable(Resources ideResources) {
    repositories = new CellTable<ProjectData>(15, ideResources);

    Column<ProjectData, ImageResource> iconColumn = new Column<ProjectData, ImageResource>(
            new ImageResourceCell()) {
        @Override
        public ImageResource getValue(ProjectData item) {
            return resources.project();
        }
    };

    Column<ProjectData, SafeHtml> repositoryColumn = new Column<ProjectData, SafeHtml>(new SafeHtmlCell()) {
        @Override
        public SafeHtml getValue(final ProjectData item) {
            return new SafeHtml() {
                public String asString() {
                    return item.getName();
                }
            };
        }
    };

    Column<ProjectData, SafeHtml> descriptionColumn = new Column<ProjectData, SafeHtml>(new SafeHtmlCell()) {
        @Override
        public SafeHtml getValue(final ProjectData item) {
            return new SafeHtml() {
                public String asString() {
                    return "<span>" + item.getDescription() + "</span>";
                }
            };
        }
    };

    repositories.addColumn(iconColumn, SafeHtmlUtils.fromSafeConstant("<br/>"));
    repositories.setColumnWidth(iconColumn, 28, Style.Unit.PX);

    repositories.addColumn(repositoryColumn, locale.samplesListRepositoryColumn());
    repositories.addColumn(descriptionColumn, locale.samplesListDescriptionColumn());

    // don't show loading indicator
    repositories.setLoadingIndicator(null);

    final SingleSelectionModel<ProjectData> selectionModel = new SingleSelectionModel<ProjectData>();
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        @Override
        public void onSelectionChange(SelectionChangeEvent event) {
            ProjectData selectedObject = selectionModel.getSelectedObject();
            delegate.onRepositorySelected(selectedObject);
        }
    });
    repositories.setSelectionModel(selectionModel);
}

From source file:com.databasepreservation.visualization.client.common.lists.AsyncTableCell.java

private void configure(final CellTable<T> display) {
    if (selectable) {
        selectColumn = new Column<T, Boolean>(new CheckboxCell(true, false)) {
            @Override//from w w w  . j  a  v  a  2 s.  c  o m
            public Boolean getValue(T object) {
                return selected.contains(object);
            }
        };

        selectColumn.setFieldUpdater(new FieldUpdater<T, Boolean>() {
            @Override
            public void update(int index, T object, Boolean isSelected) {
                if (isSelected) {
                    selected.add(object);
                } else {
                    selected.remove(object);
                }

                // update header
                display.redrawHeaders();
                fireOnCheckboxSelectionChanged();
            }
        });

        Header<Boolean> selectHeader = new Header<Boolean>(new CheckboxCell(true, true)) {

            @Override
            public Boolean getValue() {
                Boolean ret;

                if (selected.isEmpty()) {
                    ret = false;
                } else if (selected.containsAll(getVisibleItems())) {
                    ret = true;
                    showSelectAllPanel();
                } else {
                    // some are selected
                    ret = false;
                    hideSelectAllPanel();
                }

                return ret;
            }
        };

        selectHeader.setUpdater(new ValueUpdater<Boolean>() {

            @Override
            public void update(Boolean value) {
                if (value) {
                    selected.addAll(getVisibleItems());
                    showSelectAllPanel();
                } else {
                    selected.clear();
                    hideSelectAllPanel();
                }
                redraw();
                fireOnCheckboxSelectionChanged();
            }
        });

        display.addColumn(selectColumn, selectHeader);
        display.setColumnWidth(selectColumn, "45px");
    }
    configureDisplay(display);
}

From source file:com.eatrightapp.admin.client.ui.UserAccountsViewImpl.java

License:Apache License

public UserAccountsViewImpl() {
    initWidget(uiBinder.createAndBindUi(this));

    // Setup the User Accounts table.
    CheckboxCell checkboxcell = new CheckboxCell();
    Column<UserAccountProxy, Boolean> selectedColumn = new Column<UserAccountProxy, Boolean>(checkboxcell) {

        @Override/*from  ww w. j a v a 2s  . co m*/
        public Boolean getValue(UserAccountProxy object) {
            // TODO Auto-generated method stub
            return false;
        }

    };
    userAccountsCellTable.addColumn(selectedColumn, "Select");
    EmailCell emailCell = new EmailCell();
    Column<UserAccountProxy, String> emailColumn = new Column<UserAccountProxy, String>(emailCell) {
        @Override
        public String getValue(UserAccountProxy userAccount) {
            StringBuilder sb = new StringBuilder();
            if (userAccount.getEmail() != null && userAccount.getEmail().length() > 0) {
                sb.append("<a href=mailto:\"");
                sb.append(userAccount.getEmail());
                sb.append("\">");
            }
            if (userAccount.getNickname() != null && userAccount.getNickname().length() > 0) {
                sb.append(userAccount.getNickname());
            } else if (userAccount.getEmail() != null && userAccount.getEmail().length() > 0) {
                sb.append(userAccount.getEmail());
            }
            if (userAccount.getEmail() != null && userAccount.getEmail().length() > 0) {
                sb.append("</a>");
            }
            return sb.toString();
        }
    };
    userAccountsCellTable.addColumn(emailColumn, "Email");
    TextColumn<UserAccountProxy> commentColumn = new TextColumn<UserAccountProxy>() {
        @Override
        public String getValue(UserAccountProxy userAccount) {
            return userAccount.getComment();
        }
    };
    userAccountsCellTable.addColumn(commentColumn, "Comments");
    TextColumn<UserAccountProxy> bannedColumn = new TextColumn<UserAccountProxy>() {
        @Override
        public String getValue(UserAccountProxy userAccount) {
            if (userAccount.getBanned()) {
                return "BANNED";
            } else {
                return "";
            }
        }
    };
    userAccountsCellTable.addColumn(bannedColumn, "Banned");

    userAccountsCellTable.setPageSize(5);
    pager.setDisplay(userAccountsCellTable);
}

From source file:com.gafactory.core.client.ui.grids.BaseListGrid.java

License:Open Source License

protected Column<T, String> addTextEditColumn(FieldUpdater<T, String> updater,
        final Function<T, String> valueGetter, String header, int width, boolean sortable, String dataStore) {
    Column<T, String> column = new Column<T, String>(new EditTextCell()) {

        @Override//  w  w  w  . j ava 2 s. c o m
        public String getValue(T object) {
            return valueGetter.apply(object);
        }
    };
    column.setFieldUpdater(updater);

    dataGrid.addColumn(column, header);
    if (width != 0) {
        dataGrid.setColumnWidth(column, width, Style.Unit.PX);
    }
    column.setSortable(sortable);
    column.setDataStoreName(dataStore);

    return column;

}

From source file:com.gafactory.core.client.ui.grids.BaseListGrid.java

License:Open Source License

protected Column<T, SafeHtml> addTrustedHtmlColumn(final ValueProvider<T, String> valueProvider, String header,
        int width, boolean sortable) {
    return addColumn(new Column<T, SafeHtml>(new SafeHtmlCell()) {
        @Override//from w ww  .  j  a va 2  s  .  com
        public SafeHtml getValue(T object) {
            return object != null ? SafeHtmlUtils.fromTrustedString(valueProvider.getValue(object))
                    : SafeHtmlUtils.EMPTY_SAFE_HTML;
        }
    }, header, width, sortable, valueProvider.getPath());
}

From source file:com.gafactory.core.client.ui.grids.BaseListGrid.java

License:Open Source License

protected <R> Column<T, R> addSafeHtmlColumn(final ValueProvider<T, R> provider, SafeHtmlRenderer<R> renderer,
        String header, int width, boolean sortable) {
    final Column<T, R> column = new Column<T, R>(new AbstractSafeHtmlCell<R>(renderer) {
        @Override//from  ww  w.  j a  v  a2 s.  com
        protected void render(Context context, SafeHtml data, SafeHtmlBuilder sb) {
            if (data != null) {
                sb.append(data);
            }
        }
    }) {
        @Override
        public R getValue(T object) {
            return object != null ? provider.getValue(object) : null;
        }

    };
    return addColumn(column, header, width, sortable, sortable ? provider.getPath() : null);
}

From source file:com.github.gwtbootstrap.showcase.client.CellTables.java

License:Apache License

private void initTable(AbstractCellTable<Person> exampleTable, final SimplePager pager,
        final Pagination pagination) {
    exampleTable.setEmptyTableWidget(new Label("Please add data."));

    TextColumn<Person> idCol = new TextColumn<Person>() {

        @Override//  w ww  .j a va  2  s  . c  om
        public String getValue(Person object) {
            return String.valueOf(object.getId());
        }
    };

    idCol.setSortable(true);

    exampleTable.addColumn(idCol, "#");

    ListHandler<Person> idColHandler = new ListHandler<Person>(dataProvider.getList());

    idColHandler.setComparator(idCol, new Comparator<Person>() {

        @Override
        public int compare(Person o1, Person o2) {
            return o1.getId().compareTo(o2.getId());
        }
    });

    exampleTable.addColumnSortHandler(idColHandler);

    exampleTable.getColumnSortList().push(idCol);

    TextColumn<Person> userNameCol = new TextColumn<Person>() {

        @Override
        public String getValue(Person object) {
            return object.getUserName();
        }
    };
    userNameCol.setSortable(true);
    exampleTable.addColumn(userNameCol, "User Name");

    ListHandler<Person> userNameColHandler = new ListHandler<Person>(dataProvider.getList());

    userNameColHandler.setComparator(userNameCol, new Comparator<Person>() {

        @Override
        public int compare(Person o1, Person o2) {
            return o1.getUserName().compareTo(o2.getUserName());
        }
    });

    exampleTable.addColumnSortHandler(userNameColHandler);

    TextColumn<Person> ageCol = new TextColumn<Person>() {

        @Override
        public String getValue(Person object) {
            return object.getAge() != null ? String.valueOf(object.getAge()) : "";
        }
    };
    ageCol.setSortable(true);
    exampleTable.addColumn(ageCol, "Age");

    ListHandler<Person> ageColHandler = new ListHandler<Person>(dataProvider.getList());

    ageColHandler.setComparator(ageCol, new Comparator<Person>() {

        @Override
        public int compare(Person o1, Person o2) {
            if (o2.getAge() == null) {
                return 1;
            }

            if (o1.getAge() == null) {
                return -1;
            }
            return o1.getAge().compareTo(o2.getAge());
        }
    });

    exampleTable.addColumnSortHandler(ageColHandler);

    TextColumn<Person> birthDayCol = new TextColumn<Person>() {

        @Override
        public String getValue(Person object) {
            if (object.getBirthDay() != null) {
                return DateTimeFormat.getFormat("dd/MM/yyyy").format(object.getBirthDay());
            } else {
                return "";
            }
        }
    };

    exampleTable.addColumn(birthDayCol, "Birth Day");

    birthDayCol.setSortable(true);

    ListHandler<Person> birthDayColHandler = new ListHandler<Person>(dataProvider.getList());
    birthDayColHandler.setComparator(birthDayCol, new Comparator<Person>() {

        @Override
        public int compare(Person o1, Person o2) {
            if (o2.getBirthDay() == null) {
                return 1;
            }

            if (o1.getBirthDay() == null) {
                return -1;
            }

            return o1.getBirthDay().compareTo(o2.getBirthDay());
        }
    });

    exampleTable.addColumnSortHandler(birthDayColHandler);

    TextColumn<Person> favoriteCol = new TextColumn<Person>() {

        @Override
        public String getValue(Person object) {
            return object.getFavorite().getDisplayLabel();
        }
    };

    favoriteCol.setSortable(true);
    exampleTable.addColumn(favoriteCol, "Favorite");

    ListHandler<Person> favoriteColHandler = new ListHandler<Person>(dataProvider.getList());

    favoriteColHandler.setComparator(favoriteCol, new Comparator<Person>() {

        @Override
        public int compare(Person o1, Person o2) {
            return o1.getFavorite().compareTo(o2.getFavorite());
        }
    });

    exampleTable.addColumnSortHandler(favoriteColHandler);

    exampleTable.addRangeChangeHandler(new RangeChangeEvent.Handler() {

        @Override
        public void onRangeChange(RangeChangeEvent event) {
            rebuildPager(pagination, pager);
        }
    });

    ButtonCell buttonCell = new ButtonCell(IconType.REMOVE, ButtonType.DANGER);

    final TooltipCellDecorator<String> decorator = new TooltipCellDecorator<String>(buttonCell);
    decorator.setText("delete row, if click");

    Column<Person, String> buttonCol = new Column<Person, String>(decorator) {

        @Override
        public String getValue(Person object) {
            return "delete";
        }
    };

    buttonCol.setFieldUpdater(new FieldUpdater<Person, String>() {

        @Override
        public void update(int index, Person object, String value) {
            dataProvider.getList().remove(object);
            dataProvider.flush();
            dataProvider.refresh();
            rebuildPager(pagination, pager);
            rebuildPager(dataGridPagination, dataGridPager);

        }
    });

    exampleTable.addColumn(buttonCol);

    final SingleSelectionModel<Person> selectionModel = new SingleSelectionModel<Person>();

    selectionModel.addSelectionChangeHandler(new Handler() {

        @Override
        public void onSelectionChange(SelectionChangeEvent event) {
            Person person = selectionModel.getSelectedObject();

            CellTables.this.driver.edit(person);
        }
    });

    exampleTable.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.BOUND_TO_SELECTION);

    exampleTable.setSelectionModel(selectionModel);

    pager.setDisplay(exampleTable);

    pagination.clear();

    dataProvider.addDataDisplay(exampleTable);
}

From source file:com.google.appinventor.client.wizards.ComponentImportWizard.java

License:Open Source License

private CellTable createCompTable() {
    final SingleSelectionModel<Component> selectionModel = new SingleSelectionModel<Component>();

    CellTable<Component> compTable = new CellTable<Component>();
    compTable.setSelectionModel(selectionModel);

    Column<Component, Boolean> checkColumn = new Column<Component, Boolean>(new CheckboxCell(true, false)) {
        @Override/*www .j  av  a2s . c  o  m*/
        public Boolean getValue(Component comp) {
            return selectionModel.isSelected(comp);
        }
    };
    Column<Component, String> nameColumn = new Column<Component, String>(new TextCell()) {
        @Override
        public String getValue(Component comp) {
            return comp.getName();
        }
    };
    Column<Component, Number> versionColumn = new Column<Component, Number>(new NumberCell()) {
        @Override
        public Number getValue(Component comp) {
            return comp.getVersion();
        }
    };

    compTable.addColumn(checkColumn);
    compTable.addColumn(nameColumn, "Component");
    compTable.addColumn(versionColumn, "Version");

    return compTable;
}

From source file:com.google.gwt.examples.cellview.CellTableExample.java

License:Apache License

public void onModuleLoad() {
    // Create a CellTable.
    CellTable<Contact> table = new CellTable<Contact>();
    table.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);

    // Add a text column to show the name.
    TextColumn<Contact> nameColumn = new TextColumn<Contact>() {
        @Override//w  ww  . j ava  2s.co  m
        public String getValue(Contact object) {
            return object.name;
        }
    };
    table.addColumn(nameColumn, "Name");

    // Add a date column to show the birthday.
    DateCell dateCell = new DateCell();
    Column<Contact, Date> dateColumn = new Column<Contact, Date>(dateCell) {
        @Override
        public Date getValue(Contact object) {
            return object.birthday;
        }
    };
    table.addColumn(dateColumn, "Birthday");

    // Add a text column to show the address.
    TextColumn<Contact> addressColumn = new TextColumn<Contact>() {
        @Override
        public String getValue(Contact object) {
            return object.address;
        }
    };
    table.addColumn(addressColumn, "Address");

    // Add a selection model to handle user selection.
    final SingleSelectionModel<Contact> selectionModel = new SingleSelectionModel<Contact>();
    table.setSelectionModel(selectionModel);
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        public void onSelectionChange(SelectionChangeEvent event) {
            Contact selected = selectionModel.getSelectedObject();
            if (selected != null) {
                Window.alert("You selected: " + selected.name);
            }
        }
    });

    // Set the total row count. This isn't strictly necessary, but it affects
    // paging calculations, so its good habit to keep the row count up to date.
    table.setRowCount(CONTACTS.size(), true);

    // Push the data into the widget.
    table.setRowData(0, CONTACTS);

    // Add it to the root panel.
    RootPanel.get().add(table);
}