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.

DateTimeFieldElementUI.java 2.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. package com.vaadin.tests.components.datefield;
  2. import java.time.LocalDate;
  3. import java.time.LocalDateTime;
  4. import java.util.Locale;
  5. import com.vaadin.annotations.Widgetset;
  6. import com.vaadin.server.VaadinRequest;
  7. import com.vaadin.tests.components.AbstractReindeerTestUIWithLog;
  8. import com.vaadin.ui.Button;
  9. import com.vaadin.ui.DateTimeField;
  10. import com.vaadin.ui.InlineDateTimeField;
  11. @Widgetset("com.vaadin.DefaultWidgetSet")
  12. public class DateTimeFieldElementUI extends AbstractReindeerTestUIWithLog {
  13. public static final LocalDateTime TEST_DATE_TIME = LocalDateTime.of(2017,
  14. 12, 13, 17, 58);
  15. public static final LocalDateTime ANOTHER_TEST_DATE_TIME = LocalDateTime
  16. .of(2016, 11, 12, 16, 57);
  17. @Override
  18. protected void setup(VaadinRequest request) {
  19. getPage().getStyles()
  20. .add(".v-inline-datefield .teststyle { background: yellow; }");
  21. getPage().getStyles()
  22. .add(".v-datefield-popup .teststyle { background: yellow; }");
  23. log.setNumberLogRows(false);
  24. DateTimeField df = new DateTimeField();
  25. df.addValueChangeListener(event -> log(
  26. "Default date field value set to " + event.getValue()));
  27. addComponent(df);
  28. InlineDateTimeField inlineDateTimeField = new InlineDateTimeField();
  29. inlineDateTimeField.addValueChangeListener(event -> log(
  30. "Default inline date field value set to " + event.getValue()));
  31. addComponent(inlineDateTimeField);
  32. DateTimeField finnishDateTimeField = new DateTimeField("Finnish");
  33. finnishDateTimeField.setId("fi");
  34. finnishDateTimeField.setLocale(new Locale("fi", "FI"));
  35. finnishDateTimeField.setValue(TEST_DATE_TIME);
  36. finnishDateTimeField.addValueChangeListener(event -> log(
  37. "Finnish date field value set to " + event.getValue()));
  38. addComponent(finnishDateTimeField);
  39. DateTimeField usDateTimeField = new DateTimeField("US");
  40. usDateTimeField.setId("us");
  41. usDateTimeField.setLocale(Locale.US);
  42. usDateTimeField.setValue(TEST_DATE_TIME);
  43. usDateTimeField.addValueChangeListener(
  44. event -> log("US date field value set to " + event.getValue()));
  45. addComponent(usDateTimeField);
  46. addComponent(new Button("Add date styles", e -> {
  47. inlineDateTimeField.setDateStyle(LocalDate.now(), "teststyle");
  48. finnishDateTimeField.setDateStyle(LocalDate.of(2017, 12, 1),
  49. "teststyle");
  50. usDateTimeField.setDateStyle(LocalDate.of(2017, 12, 1),
  51. "teststyle");
  52. }));
  53. }
  54. @Override
  55. protected Integer getTicketNumber() {
  56. return 17090;
  57. }
  58. @Override
  59. protected String getTestDescription() {
  60. return "DateTimeField should be accessible using TB4 DateTimeFieldElement.";
  61. }
  62. }