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.

FocusingComponents.java 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package com.vaadin.tests;
  2. import com.vaadin.ui.AbstractSelect;
  3. import com.vaadin.ui.Button;
  4. import com.vaadin.ui.Button.ClickEvent;
  5. import com.vaadin.ui.ComboBox;
  6. import com.vaadin.ui.CustomComponent;
  7. import com.vaadin.ui.DateField;
  8. import com.vaadin.ui.GridLayout;
  9. import com.vaadin.ui.ListSelect;
  10. import com.vaadin.ui.NativeSelect;
  11. import com.vaadin.ui.OptionGroup;
  12. import com.vaadin.ui.TextField;
  13. /**
  14. * Simple test helper to test Focusable.focus() method.
  15. *
  16. */
  17. public class FocusingComponents extends CustomComponent {
  18. GridLayout lo = new GridLayout(2, 1);
  19. public FocusingComponents() {
  20. setCompositionRoot(lo);
  21. lo.setSpacing(true);
  22. Focusable f;
  23. f = new Button();
  24. addFocusableTest(f);
  25. addFocusableTest(new ComboBox());
  26. addFocusableTest(new TextField());
  27. addFocusableTest(new DateField());
  28. addFocusableTest(new NativeSelect());
  29. addFocusableTest(new ListSelect());
  30. addFocusableTest(new OptionGroup());
  31. OptionGroup optionGroup = new OptionGroup();
  32. optionGroup.setMultiSelect(true);
  33. addFocusableTest(optionGroup);
  34. }
  35. private void addFocusableTest(final Focusable f) {
  36. f.setCaption(f.getClass().getSimpleName());
  37. lo.addComponent(f);
  38. if (f instanceof AbstractSelect) {
  39. AbstractSelect s = (AbstractSelect) f;
  40. s.addItem("Foo");
  41. s.addItem("Bar");
  42. }
  43. Button focus = new Button("focus");
  44. focus.addListener(new Button.ClickListener() {
  45. @Override
  46. public void buttonClick(ClickEvent event) {
  47. f.focus();
  48. }
  49. });
  50. lo.addComponent(focus);
  51. }
  52. }