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.

FocusAndBlurListeners.java 3.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. package com.vaadin.tests.components;
  2. import java.util.Date;
  3. import com.vaadin.event.FieldEvents.BlurEvent;
  4. import com.vaadin.event.FieldEvents.BlurListener;
  5. import com.vaadin.event.FieldEvents.FocusEvent;
  6. import com.vaadin.event.FieldEvents.FocusListener;
  7. import com.vaadin.legacy.ui.LegacyTextField;
  8. import com.vaadin.ui.Button;
  9. import com.vaadin.ui.Button.ClickEvent;
  10. import com.vaadin.ui.Button.ClickListener;
  11. import com.vaadin.ui.CheckBox;
  12. import com.vaadin.ui.ComboBox;
  13. import com.vaadin.ui.DateField;
  14. import com.vaadin.ui.Label;
  15. import com.vaadin.ui.Layout;
  16. import com.vaadin.ui.NativeButton;
  17. import com.vaadin.ui.OptionGroup;
  18. import com.vaadin.ui.VerticalLayout;
  19. public class FocusAndBlurListeners extends TestBase {
  20. private FocusListener focusListener = new FocusListener() {
  21. @Override
  22. public void focus(FocusEvent event) {
  23. Label msg = new Label(new Date() + " Focused "
  24. + event.getComponent().getCaption());
  25. messages.addComponentAsFirst(msg);
  26. }
  27. };
  28. private BlurListener blurListener = new BlurListener() {
  29. @Override
  30. public void blur(BlurEvent event) {
  31. Label msg = new Label(new Date() + " Blurred "
  32. + event.getComponent().getCaption());
  33. messages.addComponentAsFirst(msg);
  34. }
  35. };
  36. private VerticalLayout messages = new VerticalLayout();
  37. @Override
  38. protected void setup() {
  39. Layout l = getLayout();
  40. LegacyTextField tf = new LegacyTextField("TextField");
  41. l.addComponent(tf);
  42. DateField df = new DateField("DateField");
  43. l.addComponent(df);
  44. ComboBox cb = new ComboBox("ComboBox");
  45. l.addComponent(cb);
  46. Button btn = new Button("Button");
  47. l.addComponent(btn);
  48. NativeButton nbtn = new NativeButton("NativeButton");
  49. l.addComponent(nbtn);
  50. CheckBox chkb = new CheckBox("CheckBox");
  51. l.addComponent(chkb);
  52. OptionGroup og = createOptionGroup("OptionGroup");
  53. og.setMultiSelect(false);
  54. l.addComponent(og);
  55. final OptionGroup ogm = createOptionGroup("OptionGroup (multiselect)");
  56. ogm.setMultiSelect(true);
  57. l.addComponent(ogm);
  58. btn.addListener(new ClickListener() {
  59. private int i;
  60. @Override
  61. public void buttonClick(ClickEvent event) {
  62. ogm.addItem("newItem" + i++);
  63. }
  64. });
  65. tf.addFocusListener(focusListener);
  66. tf.addBlurListener(blurListener);
  67. df.addFocusListener(focusListener);
  68. df.addBlurListener(blurListener);
  69. cb.addFocusListener(focusListener);
  70. cb.addBlurListener(blurListener);
  71. btn.addFocusListener(focusListener);
  72. btn.addBlurListener(blurListener);
  73. nbtn.addFocusListener(focusListener);
  74. nbtn.addBlurListener(blurListener);
  75. chkb.addFocusListener(focusListener);
  76. chkb.addBlurListener(blurListener);
  77. og.addFocusListener(focusListener);
  78. og.addBlurListener(blurListener);
  79. ogm.addFocusListener(focusListener);
  80. ogm.addBlurListener(blurListener);
  81. l.addComponent(messages);
  82. }
  83. private OptionGroup createOptionGroup(String caption) {
  84. OptionGroup og = new OptionGroup(caption);
  85. og.addItem("Option 0");
  86. og.addItem("Option 1");
  87. og.addItem("Option 2");
  88. return og;
  89. }
  90. @Override
  91. protected String getDescription() {
  92. return "Testing blur and focus listeners added in 6.2";
  93. }
  94. @Override
  95. protected Integer getTicketNumber() {
  96. return null;
  97. }
  98. }