package flexlabel; import java.beans.*; public class ImagePositionEditor extends PropertyEditorSupport { private int position; public void setValue(Object o) { position = ((Integer)o).intValue(); firePropertyChange(); } public Object getValue() { return new Integer(position); } public String getAsText() { switch (position) { case FlexLabel.IMAGE_LEFT: return FlexLabel.IMAGE_LEFT_STR; case FlexLabel.IMAGE_RIGHT: return FlexLabel.IMAGE_RIGHT_STR; case FlexLabel.IMAGE_TOP: return FlexLabel.IMAGE_TOP_STR; case FlexLabel.IMAGE_BOTTOM: return FlexLabel.IMAGE_BOTTOM_STR; default: return FlexLabel.IMAGE_TOP_STR; } } public void setAsText(String s) throws IllegalArgumentException { if (s.equalsIgnoreCase(FlexLabel.IMAGE_LEFT_STR)) position = FlexLabel.IMAGE_LEFT; else if (s.equalsIgnoreCase(FlexLabel.IMAGE_RIGHT_STR)) position = FlexLabel.IMAGE_RIGHT; else if (s.equalsIgnoreCase(FlexLabel.IMAGE_TOP_STR)) position = FlexLabel.IMAGE_TOP; else if (s.equalsIgnoreCase(FlexLabel.IMAGE_BOTTOM_STR)) position = FlexLabel.IMAGE_BOTTOM; else position = FlexLabel.IMAGE_TOP; firePropertyChange(); } public String[] getTags() { return new String[] { FlexLabel.IMAGE_LEFT_STR, FlexLabel.IMAGE_RIGHT_STR, FlexLabel.IMAGE_TOP_STR, FlexLabel.IMAGE_BOTTOM_STR}; } }