diff options
Diffstat (limited to 'srcs/juloo.keyboard2/EmojiTypeButton.java')
| -rw-r--r-- | srcs/juloo.keyboard2/EmojiTypeButton.java | 64 |
1 files changed, 40 insertions, 24 deletions
diff --git a/srcs/juloo.keyboard2/EmojiTypeButton.java b/srcs/juloo.keyboard2/EmojiTypeButton.java index d88bff8..20cb994 100644 --- a/srcs/juloo.keyboard2/EmojiTypeButton.java +++ b/srcs/juloo.keyboard2/EmojiTypeButton.java @@ -7,6 +7,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.LinearLayout; +import java.util.HashMap; public class EmojiTypeButton extends Button implements View.OnTouchListener @@ -16,8 +17,11 @@ public class EmojiTypeButton extends Button public EmojiTypeButton(Context context, AttributeSet attrs) { super(context, attrs); + EmojiTypeDef def = _types.get(attrs.getAttributeValue(null, "emoji_type")); + + _emojiType = def.getTypeId(); + setText(def.getButtonText()); setOnTouchListener(this); - _emojiType = getTypeByString(attrs.getAttributeValue(null, "emoji_type")); } public boolean onTouch(View view, MotionEvent event) @@ -31,29 +35,41 @@ public class EmojiTypeButton extends Button return (true); } - public static int getTypeByString(String str) + private static HashMap<String, EmojiTypeDef> _types = new HashMap<String, EmojiTypeDef>(); + + static + { + _types.put("LAST_USE", new EmojiTypeDef(EmojiGridView.TYPE_LAST_USE, "\uD83D\uDD59")); + _types.put("EMOTICONS", new EmojiTypeDef(Emoji.TYPE_EMOTICONS, "\uD83D\uDE03")); + _types.put("TRANSPORT", new EmojiTypeDef(Emoji.TYPE_TRANSPORT, "\uD83D\uDE8C")); + _types.put("FOOD", new EmojiTypeDef(Emoji.TYPE_FOOD, "\uD83C\uDF55")); + _types.put("NATURE", new EmojiTypeDef(Emoji.TYPE_NATURE, "\uD83C\uDF37")); + _types.put("FEST", new EmojiTypeDef(Emoji.TYPE_FEST, "\uD83C\uDF88")); + _types.put("ANIMAL", new EmojiTypeDef(Emoji.TYPE_ANIMAL, "\uD83D\uDC31")); + _types.put("HUMAN", new EmojiTypeDef(Emoji.TYPE_HUMAN, "\uD83D\uDC9C")); + _types.put("UNCATEGORIZED", new EmojiTypeDef(Emoji.TYPE_UNCATEGORIZED, "\uD83D\uDCA5")); + _types.put("DINGBATS", new EmojiTypeDef(Emoji.TYPE_DINGBATS, "\u2705")); + } + + private static class EmojiTypeDef { - // caca - if (str.equals("LAST_USE")) - return (EmojiGridView.TYPE_LAST_USE); - if (str.equals("EMOTICONS")) - return (Emoji.TYPE_EMOTICONS); - if (str.equals("TRANSPORT")) - return (Emoji.TYPE_TRANSPORT); - if (str.equals("FOOD")) - return (Emoji.TYPE_FOOD); - if (str.equals("NATURE")) - return (Emoji.TYPE_NATURE); - if (str.equals("FEST")) - return (Emoji.TYPE_FEST); - if (str.equals("ANIMAL")) - return (Emoji.TYPE_ANIMAL); - if (str.equals("HUMAN")) - return (Emoji.TYPE_HUMAN); - if (str.equals("UNCATEGORIZED")) - return (Emoji.TYPE_UNCATEGORIZED); - if (str.equals("DINGBATS")) - return (Emoji.TYPE_DINGBATS); - return (-1); + private int _typeId; + private String _buttonText; + + public EmojiTypeDef(int typeId, String buttonText) + { + _typeId = typeId; + _buttonText = buttonText; + } + + public int getTypeId() + { + return (_typeId); + } + + public String getButtonText() + { + return (_buttonText); + } } } |
