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.

GridReorderHiddenColumnsJoinedFooter.java 2.6KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package com.vaadin.tests.components.grid;
  2. import com.vaadin.data.provider.DataProvider;
  3. import com.vaadin.data.provider.ListDataProvider;
  4. import com.vaadin.server.VaadinRequest;
  5. import com.vaadin.tests.components.AbstractTestUI;
  6. import com.vaadin.ui.Grid;
  7. import com.vaadin.ui.components.grid.FooterCell;
  8. import com.vaadin.ui.components.grid.FooterRow;
  9. import java.util.ArrayList;
  10. import java.util.List;
  11. public class GridReorderHiddenColumnsJoinedFooter extends AbstractTestUI {
  12. @Override
  13. protected void setup(VaadinRequest request) {
  14. getLayout().setSpacing(true);
  15. Grid<String> grid = createGrid();
  16. addComponents(grid);
  17. }
  18. private Grid<String> createGrid() {
  19. Grid<String> grid = new Grid<>();
  20. grid.addColumn(t -> t + "1").setId("col1").setCaption("caption1")
  21. .setHidable(true);
  22. grid.addColumn(t -> t + "2").setId("col2").setCaption("caption2")
  23. .setHidable(true);
  24. grid.addColumn(t -> t + "3").setId("col3").setCaption("caption3")
  25. .setHidable(true);
  26. grid.addColumn(t -> t + "4").setId("col4").setCaption("caption4")
  27. .setHidable(true);
  28. grid.addColumn(t -> t + "5").setId("col5").setCaption("caption5")
  29. .setHidable(true);
  30. grid.addColumn(t -> t + "6").setId("col6").setCaption("caption6")
  31. .setHidable(true);
  32. grid.addColumn(t -> t + "7").setId("col7").setCaption("caption7")
  33. .setHidable(true);
  34. grid.addColumn(t -> t + "8").setId("col8").setCaption("caption8")
  35. .setHidable(true);
  36. grid.setColumnReorderingAllowed(true);
  37. grid.setSizeFull();
  38. // join FooterRow together
  39. FooterRow footerRow = grid.appendFooterRow();
  40. Grid.Column[] columns = grid.getColumns().toArray(new Grid.Column[0]);
  41. FooterCell footerCell = footerRow.join(columns);
  42. footerCell.setText("test");
  43. // hide columns
  44. grid.getColumn("col2").setHidden(true);
  45. grid.getColumn("col4").setHidden(true);
  46. grid.getColumn("col5").setHidden(true);
  47. grid.getColumn("col6").setHidden(true);
  48. List<String> items = new ArrayList<>();
  49. items.add("content");
  50. ListDataProvider<String> dataProvider = DataProvider
  51. .ofCollection(items);
  52. grid.setDataProvider(dataProvider);
  53. return grid;
  54. }
  55. @Override
  56. protected Integer getTicketNumber() {
  57. return 11478;
  58. }
  59. @Override
  60. protected String getTestDescription() {
  61. return "Column reordering with hidden columns and joined footer should not "
  62. + "be blocked by hidden columns.";
  63. }
  64. }