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.

TextFieldConversions.java 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. package com.vaadin.tests.components.abstractfield;
  2. import java.util.Date;
  3. import com.vaadin.server.UserError;
  4. import com.vaadin.v7.data.util.ObjectProperty;
  5. import com.vaadin.v7.ui.ComboBox;
  6. import com.vaadin.v7.ui.TextField;
  7. public class TextFieldConversions extends AbstractComponentDataBindingTest {
  8. private TextField tf;
  9. private Object o;
  10. private ComboBox dataType;
  11. @Override
  12. protected void createFields() {
  13. dataType = new ComboBox("Data type");
  14. dataType.setImmediate(true);
  15. dataType.addItem(Long.class);
  16. dataType.addItem(Integer.class);
  17. dataType.addItem(Double.class);
  18. dataType.addItem(Date.class);
  19. dataType.addItem(String.class);
  20. dataType.addValueChangeListener(event ->
  21. tf.setPropertyDataSource(new ObjectProperty<>(o,
  22. (Class<Object>) dataType.getValue())));
  23. addComponent(dataType);
  24. tf = new TextField("TextField");
  25. addComponent(tf);
  26. tf.setErrorHandler(
  27. event -> tf.setComponentError(new UserError("Invalid value")));
  28. }
  29. }