You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GridDefaultSelectionMode.java 1.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package com.vaadin.tests.components.grid;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import com.vaadin.server.VaadinRequest;
  5. import com.vaadin.tests.components.AbstractTestUI;
  6. import com.vaadin.ui.Button;
  7. import com.vaadin.ui.Grid;
  8. import com.vaadin.ui.VerticalLayout;
  9. public class GridDefaultSelectionMode extends AbstractTestUI {
  10. @Override
  11. protected void setup(VaadinRequest request) {
  12. final Person person1 = new Person();
  13. person1.setFirstName("person");
  14. person1.setLastName("one");
  15. Person person2 = new Person();
  16. person2.setFirstName("person");
  17. person2.setLastName("two");
  18. List<Person> items = new ArrayList<>();
  19. items.add(person1);
  20. items.add(person2);
  21. final Grid<Person> grid = new Grid<>();
  22. grid.setItems(items);
  23. grid.addColumn(person -> person.getFirstName())
  24. .setCaption("First Name");
  25. grid.addColumn(person -> person.getLastName()).setCaption("Last Name");
  26. VerticalLayout v = new VerticalLayout();
  27. v.addComponent(new Button("Deselect on server",
  28. event -> grid.getSelectionModel().deselectAll()));
  29. v.addComponent(new Button("Select on server",
  30. event -> grid.getSelectionModel().select(person1)));
  31. v.addComponent(grid);
  32. addComponent(v);
  33. }
  34. public static class Person {
  35. private String firstName;
  36. private String lastName;
  37. public String getFirstName() {
  38. return firstName;
  39. }
  40. public void setFirstName(String firstName) {
  41. this.firstName = firstName;
  42. }
  43. public String getLastName() {
  44. return lastName;
  45. }
  46. public void setLastName(String lastName) {
  47. this.lastName = lastName;
  48. }
  49. }
  50. }