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.

GridMultiSelectionOnInit.java 1.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package com.vaadin.tests.components.grid;
  2. import java.util.Arrays;
  3. import com.vaadin.server.VaadinRequest;
  4. import com.vaadin.tests.components.AbstractTestUI;
  5. import com.vaadin.ui.Button;
  6. import com.vaadin.ui.Grid;
  7. import com.vaadin.ui.Grid.SelectionMode;
  8. import com.vaadin.ui.RadioButtonGroup;
  9. import com.vaadin.ui.components.grid.MultiSelectionModel.SelectAllCheckBoxVisibility;
  10. import com.vaadin.ui.components.grid.MultiSelectionModelImpl;
  11. public class GridMultiSelectionOnInit extends AbstractTestUI {
  12. @Override
  13. protected void setup(VaadinRequest request) {
  14. final Grid<String> grid = new Grid<>();
  15. grid.setItems("Foo 1", "Foo 2");
  16. grid.addColumn(item -> item);
  17. MultiSelectionModelImpl<String> selectionModel = (MultiSelectionModelImpl<String>) grid
  18. .setSelectionMode(SelectionMode.MULTI);
  19. addComponent(grid);
  20. addComponent(new Button("Select rows",
  21. event -> grid.getSelectionModel().select("Foo 1")));
  22. if (request.getParameter("initialSelection") != null) {
  23. grid.getSelectionModel().select("Foo 2");
  24. }
  25. RadioButtonGroup<SelectAllCheckBoxVisibility> rbg = new RadioButtonGroup<>(
  26. "Select All Visible",
  27. Arrays.asList(SelectAllCheckBoxVisibility.VISIBLE,
  28. SelectAllCheckBoxVisibility.HIDDEN,
  29. SelectAllCheckBoxVisibility.DEFAULT));
  30. rbg.setValue(selectionModel.getSelectAllCheckBoxVisibility());
  31. rbg.addValueChangeListener(event -> selectionModel
  32. .setSelectAllCheckBoxVisibility(event.getValue()));
  33. addComponent(rbg);
  34. }
  35. }