Back to project page mezzofanti.
The source code is released under:
Apache License
If you think the Android project mezzofanti listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
/* * Copyright (C) 2008 Google Inc./*from w ww .j a v a 2 s . c om*/ * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.itwizard.mezzofanti; import android.app.Activity; import android.graphics.drawable.Drawable; import android.widget.Button; import java.util.Map; /** * Language information for the Google Translate API. */ public final class Languages { /** * Reference at http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 */ public static enum Language { // AFRIKAANS("af", "Afrikaans", R.drawable.af), // ALBANIAN("sq", "Albanian"), // AMHARIC("am", "Amharic", R.drawable.am), // ARABIC("ar", "Arabic", R.drawable.ar), // ARMENIAN("hy", "Armenian"), // AZERBAIJANI("az", "Azerbaijani", R.drawable.az), // BASQUE("eu", "Basque"), // BELARUSIAN("be", "Belarusian", R.drawable.be), // BENGALI("bn", "Bengali", R.drawable.bn), // BIHARI("bh", "Bihari", R.drawable.bh), BULGARIAN("bg", "Bulgarian", R.drawable.bg), // BURMESE("my", "Burmese", R.drawable.my), CATALAN("ca", "Catalan",R.drawable.catalonia), CHINESE("zh", "Chinese", R.drawable.cn), CHINESE_SIMPLIFIED("zh-CN", "Chinese simplified", R.drawable.cn), CHINESE_TRADITIONAL("zh-TW", "Chinese traditional", R.drawable.tw), CROATIAN("hr", "Croatian", R.drawable.hr), CZECH("cs", "Czech", R.drawable.cs), DANISH("da", "Danish", R.drawable.dk), // DHIVEHI("dv", "Dhivehi"), DUTCH("nl", "Dutch", R.drawable.nl), ENGLISH("en", "English", R.drawable.us), // ESPERANTO("eo", "Esperanto"), // ESTONIAN("et", "Estonian", R.drawable.et), FILIPINO("tl", "Filipino", R.drawable.ph), FINNISH("fi", "Finnish", R.drawable.fi), FRENCH("fr", "French", R.drawable.fr), // GALICIAN("gl", "Galician", R.drawable.gl), // GEORGIAN("ka", "Georgian"), GERMAN("de", "German", R.drawable.de), GREEK("el", "Greek", R.drawable.gr), // GUARANI("gn", "Guarani", R.drawable.gn), // GUJARATI("gu", "Gujarati", R.drawable.gu), // HEBREW("iw", "Hebrew", R.drawable.il), // HINDI("hi", "Hindi"), // HUNGARIAN("hu", "Hungarian", R.drawable.hu), // ICELANDIC("is", "Icelandic", R.drawable.is), INDONESIAN("id", "Indonesian", R.drawable.id), // INUKTITUT("iu", "Inuktitut"), ITALIAN("it", "Italian", R.drawable.it), JAPANESE("ja", "Japanese", R.drawable.jp), // KANNADA("kn", "Kannada", R.drawable.kn), // KAZAKH("kk", "Kazakh"), // KHMER("km", "Khmer", R.drawable.km), KOREAN("ko", "Korean", R.drawable.kr), // KURDISH("ky", "Kurdish", R.drawable.ky), // LAOTHIAN("lo", "Laothian"), // LATVIAN("la", "Latvian", R.drawable.la), LITHUANIAN("lt", "Lithuanian", R.drawable.lt), // MACEDONIAN("mk", "Macedonian", R.drawable.mk), // MALAY("ms", "Malay", R.drawable.ms), // MALAYALAM("ml", "Malayalam", R.drawable.ml), // MALTESE("mt", "Maltese", R.drawable.mt), // MARATHI("mr", "Marathi", R.drawable.mr), // MONGOLIAN("mn", "Mongolian", R.drawable.mn), // NEPALI("ne", "Nepali", R.drawable.ne), NORWEGIAN("no", "Norwegian", R.drawable.no), // ORIYA("or", "Oriya"), // PASHTO("ps", "Pashto", R.drawable.ps), // PERSIAN("fa", "Persian"), POLISH("pl", "Polish", R.drawable.pl), PORTUGUESE("pt", "Portuguese", R.drawable.pt), // PUNJABI("pa", "Punjabi", R.drawable.pa), ROMANIAN("ro", "Romanian", R.drawable.ro), RUSSIAN("ru", "Russian", R.drawable.ru), // SANSKRIT("sa", "Sanskrit", R.drawable.sa), SERBIAN("sr", "Serbian", R.drawable.sr), // SINDHI("sd", "Sindhi", R.drawable.sd), // SINHALESE("si", "Sinhalese", R.drawable.si), SLOVAK("sk", "Slovak", R.drawable.sk), SLOVENIAN("sl", "Slovenian", R.drawable.sl), SPANISH("es", "Spanish", R.drawable.es), // SWAHILI("sw", "Swahili"), SWEDISH("sv", "Swedish", R.drawable.sv), // TAJIK("tg", "Tajik", R.drawable.tg), // TAMIL("ta", "Tamil"), TAGALOG("tl", "Tagalog", R.drawable.ph), // TELUGU("te", "Telugu"), // THAI("th", "Thai", R.drawable.th), // TIBETAN("bo", "Tibetan", R.drawable.bo), // TURKISH("tr", "Turkish", R.drawable.tr), UKRAINIAN("uk", "Ukrainian", R.drawable.ua), // URDU("ur", "Urdu"), // UZBEK("uz", "Uzbek", R.drawable.uz), // UIGHUR("ug", "Uighur", R.drawable.ug), ; private String mShortName; private String mLongName; private int mFlag; public static Map<String, String> mLongNameToShortName = Maps.newHashMap(); public static Map<String, Language> mShortNameToLanguage = Maps.newHashMap(); static { for (Language language : values()) { mLongNameToShortName.put(language.getLongName(), language.getShortName()); mShortNameToLanguage.put(language.getShortName(), language); } } private Language(String shortName, String longName, int flag) { init(shortName, longName, flag); } private Language(String shortName, String longName) { init(shortName, longName, -1); } private void init(String shortName, String longName, int flag) { mShortName = shortName; mLongName = longName; mFlag = flag; } public String getShortName() { return mShortName; } public String getLongName() { return mLongName; } public int getFlag() { return mFlag; } @Override public String toString() { return mLongName; } public static Language findLanguageByShortName(String shortName) { return mShortNameToLanguage.get(shortName); } public void configureButton(Activity activity, Button button) { button.setTag(this); button.setText(getLongName()); int f = getFlag(); if (f != -1) { Drawable flag = ((Activity)activity).getResources().getDrawable(f); button.setCompoundDrawablesWithIntrinsicBounds(flag, null, null, null); button.setCompoundDrawablePadding(5); } } } public static String getShortName(String longName) { return Language.mLongNameToShortName.get(longName); } }