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.

DateFieldWhenChangingValueAndEnablingParent.java 2.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package com.vaadin.tests.components.datefield;
  2. import java.util.Date;
  3. import com.vaadin.data.Property.ValueChangeEvent;
  4. import com.vaadin.data.Property.ValueChangeListener;
  5. import com.vaadin.server.VaadinRequest;
  6. import com.vaadin.tests.components.AbstractTestUI;
  7. import com.vaadin.ui.CheckBox;
  8. import com.vaadin.ui.DateField;
  9. import com.vaadin.ui.PopupDateField;
  10. import com.vaadin.ui.VerticalLayout;
  11. public class DateFieldWhenChangingValueAndEnablingParent extends AbstractTestUI {
  12. @Override
  13. protected void setup(VaadinRequest request) {
  14. final VerticalLayout main = new VerticalLayout();
  15. final VerticalLayout sub = new VerticalLayout();
  16. final CheckBox chk = new CheckBox("Parent layout enabled");
  17. main.setMargin(true);
  18. setContent(main);
  19. final DateField df1 = createDateField(true);
  20. final DateField df2 = createDateField(false);
  21. final PopupDateField pdf1 = createPopupDateField(true, true);
  22. final PopupDateField pdf2 = createPopupDateField(true, false);
  23. final PopupDateField pdf3 = createPopupDateField(false, true);
  24. final PopupDateField pdf4 = createPopupDateField(false, false);
  25. sub.addComponent(df1);
  26. sub.addComponent(df2);
  27. sub.addComponent(pdf1);
  28. sub.addComponent(pdf2);
  29. sub.addComponent(pdf3);
  30. sub.addComponent(pdf4);
  31. sub.setEnabled(false);
  32. main.addComponent(chk);
  33. main.addComponent(sub);
  34. chk.addValueChangeListener(new ValueChangeListener() {
  35. @Override
  36. public void valueChange(ValueChangeEvent event) {
  37. df1.setValue(new Date());
  38. df2.setValue(new Date());
  39. pdf1.setValue(new Date());
  40. pdf2.setValue(new Date());
  41. pdf3.setValue(new Date());
  42. pdf4.setValue(new Date());
  43. sub.setEnabled(chk.getValue());
  44. }
  45. });
  46. }
  47. private DateField createDateField(boolean enabled) {
  48. DateField df = new DateField("DateField, "
  49. + (enabled ? "enabled" : "disabled"));
  50. df.setEnabled(enabled);
  51. df.setId("DATEFIELD_" + (enabled ? "ENABLED" : "DISABLED"));
  52. return df;
  53. }
  54. private PopupDateField createPopupDateField(boolean enabled,
  55. boolean textInputEnabled) {
  56. PopupDateField df = new PopupDateField("PopupDateField, "
  57. + (enabled ? "enabled" : "disabled") + ", text input "
  58. + (textInputEnabled ? "enabled" : "disabled"));
  59. df.setEnabled(enabled);
  60. df.setTextFieldEnabled(textInputEnabled);
  61. df.setId("DATEFIELD_" + (enabled ? "ENABLED" : "DISABLED") + "_"
  62. + (textInputEnabled ? "ENABLED" : "DISABLED"));
  63. return df;
  64. }
  65. }