package scrum.client.collaboration; import ilarkesto.core.scope.Scope; import ilarkesto.gwt.client.LabelProvider; import java.util.Arrays; import java.util.List; import java.util.Map; import scrum.client.admin.Auth; import scrum.client.common.AScrumGwtEntity; public class Emoticon extends GEmoticon { public Emoticon(AScrumGwtEntity parent, String emotion) { setOwner(Scope.get().getComponent(Auth.class).getUser()); setParent(parent); setEmotion(emotion); } public Emoticon(Map data) { super(data); } public String getEmotionLabel() { return getEmotionLabel(getEmotion()); } public String getTooltip() { return getOwner().getName() + ": " + getEmotionLabel(); } @Override public String toString() { return getOwner() + ":" + getEmotion(); } public static String getEmotionLabel(String emotion) { if (emotion == null) return "-"; return emotion; } public static transient final List<String> EMOTIONS = Arrays.asList("grin", "cry", "angry", "surprise"); public static transient final List<String> EMOTIONS_LEGACY = Arrays.asList("grin", "smile", "wink", "surprise", "sad", "cry", "angry"); public transient static LabelProvider<String> EMOTION_LABEL_PROVIDER = new LabelProvider<String>() { public String getLabel(String emotion) { if (emotion == null) return null; return getEmotionLabel(emotion); } }; }