1 16 package com.google.gwt.sample.i18n.client; 17 18 import com.google.gwt.core.client.GWT; 19 import com.google.gwt.user.client.ui.KeyboardListenerAdapter; 20 import com.google.gwt.user.client.ui.TextBox; 21 import com.google.gwt.user.client.ui.Widget; 22 23 import java.util.MissingResourceException ; 24 25 28 public class ConstantsWithLookupExampleController { 29 30 private static final String DEFAULT_INPUT = "red"; 31 private static final ColorConstants COLORS = (ColorConstants) GWT.create(ColorConstants.class); 32 33 public final TextBox txtInput = new TextBox(); 34 public final TextBox txtResult = new TextBox(); 35 private String prevText; 36 private final ConstantsWithLookupExampleConstants constants; 37 38 public ConstantsWithLookupExampleController( 39 final ConstantsWithLookupExampleConstants constants) { 40 41 this.constants = constants; 42 txtResult.setText(constants.noInputResult()); 43 txtResult.setReadOnly(true); 44 45 txtInput.addKeyboardListener(new KeyboardListenerAdapter() { 46 public void onKeyUp(Widget sender, char keyCode, int modifiers) { 47 maybeRefreshLookup(constants); 48 } 49 }); 50 51 txtInput.setText(DEFAULT_INPUT); 52 maybeRefreshLookup(constants); 53 } 54 55 public ConstantsWithLookupExampleConstants getConstants() { 56 return constants; 57 } 58 59 private void maybeRefreshLookup( 60 final ConstantsWithLookupExampleConstants constants) { 61 final String currText = txtInput.getText().trim(); 62 if (!currText.equals(prevText)) { 63 prevText = currText; 64 if ("".equals(currText)) { 65 txtResult.setText(constants.noInputResult()); 66 } else { 67 try { 68 String color = COLORS.getString(currText); 69 txtResult.setText(color); 70 } catch (MissingResourceException e) { 71 txtResult.setText(constants.noMatchingResult()); 72 } 73 } 74 } 75 } 76 } 77 | Popular Tags |