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.

GridLayoutDetailsRow.java 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package com.vaadin.tests.components.grid;
  2. import com.vaadin.server.VaadinRequest;
  3. import com.vaadin.tests.data.bean.Person;
  4. import com.vaadin.ui.Grid;
  5. import com.vaadin.ui.GridLayout;
  6. import com.vaadin.ui.Label;
  7. /**
  8. * Tests that details row displays GridLayout contents properly.
  9. *
  10. * @author Vaadin Ltd
  11. */
  12. public class GridLayoutDetailsRow extends SimpleGridUI {
  13. @Override
  14. protected void setup(VaadinRequest request) {
  15. final Grid<Person> grid = createGrid();
  16. grid.setSizeFull();
  17. addComponent(grid);
  18. grid.setDetailsGenerator(item -> {
  19. final GridLayout detailsLayout = new GridLayout();
  20. detailsLayout.setSizeFull();
  21. detailsLayout.setHeightUndefined();
  22. final Label lbl1 = new Label("test1");
  23. lbl1.setId("lbl1");
  24. lbl1.setWidth("200px");
  25. detailsLayout.addComponent(lbl1);
  26. final Label lbl2 = new Label("test2");
  27. lbl2.setId("lbl2");
  28. detailsLayout.addComponent(lbl2);
  29. final Label lbl3 = new Label("test3");
  30. lbl3.setId("lbl3");
  31. detailsLayout.addComponent(lbl3);
  32. final Label lbl4 = new Label("test4");
  33. lbl4.setId("lbl4");
  34. detailsLayout.addComponent(lbl4);
  35. return detailsLayout;
  36. });
  37. grid.addItemClickListener(click -> {
  38. final Person person = click.getItem();
  39. grid.setDetailsVisible(person, !grid.isDetailsVisible(person));
  40. });
  41. }
  42. @Override
  43. protected String getTestDescription() {
  44. return "GridLayout as part of Grid detail row should be correctly computed/displayed.";
  45. }
  46. @Override
  47. protected Integer getTicketNumber() {
  48. return 18619;
  49. }
  50. }