Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

RowGenerators.java 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. package com.vaadin.tests.components.table;
  2. import com.vaadin.tests.components.TestBase;
  3. import com.vaadin.v7.data.Container;
  4. import com.vaadin.v7.data.Item;
  5. import com.vaadin.v7.data.util.IndexedContainer;
  6. import com.vaadin.v7.ui.Table;
  7. import com.vaadin.v7.ui.Table.GeneratedRow;
  8. import com.vaadin.v7.ui.Table.RowGenerator;
  9. public class RowGenerators extends TestBase implements RowGenerator {
  10. @Override
  11. protected void setup() {
  12. Table table = new Table();
  13. table.setContainerDataSource(filledContainer());
  14. table.setRowGenerator(this);
  15. addComponent(table);
  16. }
  17. private Container filledContainer() {
  18. IndexedContainer c = new IndexedContainer();
  19. c.addContainerProperty("Property 1", String.class, "");
  20. c.addContainerProperty("Property 2", String.class, "");
  21. c.addContainerProperty("Property 3", String.class, "");
  22. c.addContainerProperty("Property 4", String.class, "");
  23. for (int ix = 0; ix < 500; ix++) {
  24. Item i = c.addItem(ix);
  25. i.getItemProperty("Property 1").setValue("Item " + ix + ",1");
  26. i.getItemProperty("Property 2").setValue("Item " + ix + ",2");
  27. i.getItemProperty("Property 3").setValue("Item " + ix + ",3");
  28. i.getItemProperty("Property 4").setValue("Item " + ix + ",4");
  29. }
  30. return c;
  31. }
  32. @Override
  33. public GeneratedRow generateRow(Table table, Object itemId) {
  34. if ((Integer) itemId % 5 == 0) {
  35. if ((Integer) itemId % 10 == 0) {
  36. return new GeneratedRow(
  37. "foobarbazoof very extremely long, most definitely will span.");
  38. } else {
  39. return new GeneratedRow("foo", "bar", "baz", "oof");
  40. }
  41. }
  42. return null;
  43. }
  44. @Override
  45. protected String getDescription() {
  46. return "Row generators should replace every fifth row in the table";
  47. }
  48. @Override
  49. protected Integer getTicketNumber() {
  50. return 6720;
  51. }
  52. }