1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | public class GoogleTranslate { private Hashtable languages = new Hashtable(); private Hashtable langLabels = new Hashtable(); private Effect textEffect; protected SelectItem[] ORIGINAL_LANGUAGES; protected SelectItem[] TRANSLATION_LANGUAGES; public void updateText(ActionEvent event) throws Exception{ if(this.getText().length() > 1 ){ this.setOutputText(translate(getText())); } } public void resetAll(ActionEvent event){ this.setText(""); this.setOutputText(""); } public String translate(String input) throws Exception{ String out = ""; if(input != null){ out = Translate.translate(this.getText(), getSelectedOriginalLanguage(), getSelectedTranslatedLanguage()); invokeTextEffect(); } return out; } public SelectItem[] getORIGINAL_LANGUAGES() { if(ORIGINAL_LANGUAGES == null){ this.setLanguages(); this.setLangLabels(); Enumeration en = this.languages.keys(); Enumeration enLbls = this.langLabels.keys(); ORIGINAL_LANGUAGES = new SelectItem[languages.size()]; for (int i = 0; i < languages.size(); i++) { ORIGINAL_LANGUAGES = new SelectItem( (String)this.langLabels.get(enLbls.nextElement()), (String) this.languages.get(en.nextElement())); } } return ORIGINAL_LANGUAGES; } public SelectItem[] getTRANSLATION_LANGUAGES() { if(TRANSLATION_LANGUAGES == null){ this.setLanguages(); this.setLangLabels(); Enumeration en = this.languages.keys(); Enumeration enLbls = this.langLabels.keys(); TRANSLATION_LANGUAGES = new SelectItem[languages.size()]; for (int i = 0; i < languages.size(); i++) { TRANSLATION_LANGUAGES = new SelectItem( (String) this.langLabels.get(enLbls.nextElement()), (String) this.languages.get(en.nextElement())); } } return TRANSLATION_LANGUAGES; } public void setLanguages() { this.languages.put(Language.ARABIC, "ARABIC"); this.languages.put(Language.CHINESE_SIMPLIFIED, "CHINESE_SIMPLIFIED"); this.languages.put(Language.CHINESE_TRADITIONAL, "CHINESE_TRADITIONAL"); this.languages.put(Language.DUTCH, "DUTCH"); this.languages.put(Language.ENGLISH, "ENGLISH"); this.languages.put(Language.FRENCH, "FRENCH"); this.languages.put(Language.GERMAN, "GERMAN"); this.languages.put(Language.GREEK, "GREEK"); this.languages.put(Language.ITALIAN, "ITALIAN"); this.languages.put(Language.JAPANESE, "JAPANESE"); this.languages.put(Language.KOREAN, "KOREAN"); this.languages.put(Language.PORTUGESE, "PORTUGESE"); this.languages.put(Language.RUSSIAN, "RUSSIAN"); this.languages.put(Language.SPANISH, "SPANISH"); } public void setLangLabels() { this.langLabels.put(new Integer(0), Language.PORTUGESE); this.langLabels.put(new Integer(1),Language.KOREAN); this.langLabels.put(new Integer(2), Language.JAPANESE); this.langLabels.put(new Integer(3), Language.SPANISH); this.langLabels.put(new Integer(4), Language.GERMAN); this.langLabels.put(new Integer(5), Language.FRENCH); this.langLabels.put(new Integer(6), Language.ITALIAN); this.langLabels.put(new Integer(7), Language.CHINESE_SIMPLIFIED); this.langLabels.put(new Integer(8), Language.ARABIC); this.langLabels.put(new Integer(9), Language.RUSSIAN); this.langLabels.put(new Integer(10),Language.GREEK); this.langLabels.put(new Integer(11), Language.ENGLISH); this.langLabels.put(new Integer(12), Language.DUTCH); this.langLabels.put(new Integer(13), Language.CHINESE_TRADITIONAL); } } } |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |