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.

DatesCssTest.java 2.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package com.vaadin.tests.components.uitest.components;
  2. import java.time.LocalDate;
  3. import java.util.Iterator;
  4. import com.vaadin.shared.ui.datefield.DateResolution;
  5. import com.vaadin.tests.components.TestDateField;
  6. import com.vaadin.tests.components.uitest.TestSampler;
  7. import com.vaadin.ui.AbstractDateField;
  8. import com.vaadin.ui.AbstractField;
  9. import com.vaadin.ui.Component;
  10. import com.vaadin.ui.DateField;
  11. import com.vaadin.ui.GridLayout;
  12. import com.vaadin.ui.InlineDateField;
  13. import com.vaadin.v7.ui.themes.ChameleonTheme;
  14. @SuppressWarnings("deprecation")
  15. public class DatesCssTest extends GridLayout {
  16. private TestSampler parent;
  17. private int debugIdCounter = 0;
  18. private LocalDate date = LocalDate.of(2012, 9, 11);
  19. public DatesCssTest(TestSampler parent) {
  20. super(5, 2);
  21. this.parent = parent;
  22. setSpacing(true);
  23. setWidth("100%");
  24. createDateFieldWith(null, null, null);
  25. createDateFieldWith("Small", ChameleonTheme.DATEFIELD_SMALL, null);
  26. createDateFieldWith("Big", ChameleonTheme.DATEFIELD_BIG, null);
  27. AbstractDateField<LocalDate, DateResolution> df = new DateField(
  28. "Popup date field");
  29. df.setId("datefield" + debugIdCounter++);
  30. df.setValue(date);
  31. addComponent(df);
  32. df = new InlineDateField("Inline date field");
  33. df.setId("datefield" + debugIdCounter++);
  34. df.setValue(date);
  35. addComponent(df);
  36. createDateFieldWith(null, null, "130px");
  37. createDateFieldWith("Small 130px", ChameleonTheme.DATEFIELD_SMALL,
  38. "130px");
  39. createDateFieldWith("Big 130px", ChameleonTheme.DATEFIELD_BIG, "130px");
  40. parent.addReadOnlyChangeListener(event -> {
  41. Iterator<Component> iterator = iterator();
  42. while (iterator.hasNext()) {
  43. Component c = iterator.next();
  44. if (c instanceof AbstractField) {
  45. AbstractField<?> af = (AbstractField<?>) c;
  46. af.setReadOnly(!af.isReadOnly());
  47. }
  48. }
  49. });
  50. }
  51. private void createDateFieldWith(String caption, String primaryStyleName,
  52. String width) {
  53. AbstractDateField<LocalDate, DateResolution> df = new TestDateField(
  54. "Date field");
  55. df.setId("datefield" + debugIdCounter++);
  56. df.setValue(date);
  57. if (caption != null) {
  58. df.setCaption(caption);
  59. }
  60. if (primaryStyleName != null) {
  61. df.addStyleName(primaryStyleName);
  62. }
  63. if (width != null) {
  64. df.setWidth(width);
  65. }
  66. addComponent(df);
  67. }
  68. @Override
  69. public void addComponent(Component c) {
  70. parent.registerComponent(c);
  71. super.addComponent(c);
  72. }
  73. }