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.

LocaleChangeOnReadOnlyField.java 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package com.vaadin.tests.components.textfield;
  2. import java.math.BigDecimal;
  3. import java.util.Locale;
  4. import com.vaadin.server.VaadinRequest;
  5. import com.vaadin.tests.components.AbstractReindeerTestUI;
  6. import com.vaadin.ui.Button;
  7. import com.vaadin.v7.ui.TextField;
  8. public class LocaleChangeOnReadOnlyField extends AbstractReindeerTestUI {
  9. @Override
  10. protected void setup(VaadinRequest request) {
  11. final TextField textField = getReadOnlyTextField();
  12. addComponent(textField);
  13. Button changeLocaleButton = addLocaleChangeButton(textField);
  14. addComponent(changeLocaleButton);
  15. }
  16. private TextField getReadOnlyTextField() {
  17. final TextField textField = new TextField();
  18. textField.setConverter(BigDecimal.class);
  19. textField.setLocale(Locale.US);
  20. textField.setValue("1024000");
  21. textField.setReadOnly(true);
  22. return textField;
  23. }
  24. private Button addLocaleChangeButton(final TextField textField) {
  25. Button changeLocaleButton = new Button();
  26. changeLocaleButton.setCaption("Change Locale");
  27. changeLocaleButton
  28. .addClickListener(event -> textField.setLocale(Locale.GERMANY));
  29. return changeLocaleButton;
  30. }
  31. @Override
  32. protected String getTestDescription() {
  33. return "Read-only fields throw exception when setting converted value in localeMightHaveChanged()";
  34. }
  35. @Override
  36. protected Integer getTicketNumber() {
  37. return 14400;
  38. }
  39. }