Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

LenientMode.java 2.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package com.vaadin.tests.components.datefield;
  2. import java.time.LocalDate;
  3. import java.util.Locale;
  4. import com.vaadin.data.HasValue.ValueChangeEvent;
  5. import com.vaadin.data.HasValue.ValueChangeListener;
  6. import com.vaadin.shared.ui.datefield.Resolution;
  7. import com.vaadin.tests.components.TestBase;
  8. import com.vaadin.tests.components.TestDateField;
  9. import com.vaadin.ui.AbstractDateField;
  10. import com.vaadin.ui.Button;
  11. public class LenientMode extends TestBase
  12. implements ValueChangeListener<LocalDate> {
  13. private static final long serialVersionUID = -9064553409580072387L;
  14. @Override
  15. protected String getDescription() {
  16. return "In lenien mode DateField should accept date input from user like '32/12/09'. In normal mode, an exception should be thrown. ";
  17. }
  18. @Override
  19. protected Integer getTicketNumber() {
  20. return 3175;
  21. }
  22. @Override
  23. protected void setup() {
  24. LocalDate d = LocalDate.of(2009, 12, 31);
  25. AbstractDateField df = new TestDateField("Lenient ");
  26. df.setLocale(new Locale("fi"));
  27. df.setResolution(Resolution.DAY);
  28. df.setLenient(true);
  29. df.setValue(d);
  30. AbstractDateField df2 = new TestDateField("Normal ");
  31. df2.setLocale(new Locale("fi"));
  32. df2.setResolution(Resolution.DAY);
  33. // df2.setLenient(false);
  34. df2.setValue(null);
  35. df2.setValue(d);
  36. addComponent(df);
  37. addComponent(df2);
  38. df.addValueChangeListener(this);
  39. df2.addValueChangeListener(this);
  40. df = new TestDateField("Lenient with time");
  41. df.setLocale(new Locale("fi"));
  42. df.setLenient(true);
  43. df.setValue(d);
  44. df2 = new TestDateField("Normal with time");
  45. df2.setLocale(new Locale("fi"));
  46. // df2.setLenient(false);
  47. df2.setValue(null);
  48. df2.setValue(d);
  49. addComponent(df);
  50. addComponent(df2);
  51. df.addValueChangeListener(this);
  52. df2.addValueChangeListener(this);
  53. addComponent(new Button("Visit server"));
  54. }
  55. @Override
  56. public void valueChange(ValueChangeEvent<LocalDate> event) {
  57. getMainWindow().showNotification("New value" + event.getValue());
  58. }
  59. }