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.

GridWithInitiallyOpenDetails.java 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package com.vaadin.tests.components.grid;
  2. import java.util.List;
  3. import com.vaadin.server.VaadinRequest;
  4. import com.vaadin.tests.data.bean.Person;
  5. import com.vaadin.ui.Grid;
  6. import com.vaadin.ui.Grid.ItemClick;
  7. import com.vaadin.ui.Label;
  8. import com.vaadin.ui.components.grid.ItemClickListener;
  9. public class GridWithInitiallyOpenDetails extends SimpleGridUI {
  10. private List<Person> persons;
  11. @Override
  12. protected void setup(VaadinRequest request) {
  13. addComponent(createGrid());
  14. }
  15. @Override
  16. protected List<Person> createPersons() {
  17. persons = super.createPersons();
  18. return persons;
  19. }
  20. @Override
  21. protected Grid<Person> createGrid() {
  22. Grid<Person> grid = super.createGrid();
  23. grid.setDetailsGenerator(
  24. row -> new Label("details for " + row.getFirstName()));
  25. for (Person person : persons) {
  26. grid.setDetailsVisible(person, true);
  27. }
  28. grid.addItemClickListener(new ItemClickListener<Person>() {
  29. @Override
  30. public void itemClick(ItemClick<Person> event) {
  31. grid.setDetailsVisible(event.getItem(),
  32. !grid.isDetailsVisible(event.getItem()));
  33. }
  34. });
  35. return grid;
  36. }
  37. @Override
  38. protected String getTestDescription() {
  39. return "Initially open details rows should be taken into account in row positioning.";
  40. }
  41. @Override
  42. protected Integer getTicketNumber() {
  43. return 11325;
  44. }
  45. }