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.

GridEventSentOnColumnVisibilityChange.java 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package com.vaadin.tests.components.grid;
  2. import java.util.Arrays;
  3. import java.util.List;
  4. import com.vaadin.server.VaadinRequest;
  5. import com.vaadin.tests.components.AbstractTestUIWithLog;
  6. import com.vaadin.ui.Grid;
  7. public class GridEventSentOnColumnVisibilityChange
  8. extends AbstractTestUIWithLog {
  9. @Override
  10. protected void setup(VaadinRequest request) {
  11. List<Person> people = Arrays.asList(
  12. new Person("Nicolaus Copernicus", 1543),
  13. new Person("Galileo Galilei", 1564),
  14. new Person("Johannes Kepler", 1571));
  15. Grid<Person> grid = new Grid<>();
  16. grid.setItems(people);
  17. grid.addColumn(Person::getName).setId("name").setCaption("Name")
  18. .setHidable(true);
  19. grid.addColumn(Person::getBirthYear).setCaption("Year of birth")
  20. .setHidable(true);
  21. grid.setSizeFull();
  22. grid.addColumnVisibilityChangeListener(
  23. event -> log("UserOriginated: " + event.isUserOriginated()));
  24. addComponent(grid);
  25. }
  26. private class Person {
  27. private final String name;
  28. private final int birthYear;
  29. public Person(String name, int birthYear) {
  30. this.name = name;
  31. this.birthYear = birthYear;
  32. }
  33. public String getName() {
  34. return name;
  35. }
  36. public int getBirthYear() {
  37. return birthYear;
  38. }
  39. }
  40. @Override
  41. public String getDescription() {
  42. return "Every time when the user changes the visibility of the column,"
  43. + " there should have only one event sent";
  44. }
  45. @Override
  46. protected Integer getTicketNumber() {
  47. return 11419;
  48. }
  49. }