package org.objectstyle.wolips.eomodeler.editors.fetchspec;
import org.eclipse.swt.graphics.Image;
import org.objectstyle.wolips.eomodeler.Activator;
import org.objectstyle.wolips.eomodeler.core.model.EOAttribute;
import org.objectstyle.wolips.eomodeler.core.model.EOSortOrdering;
import org.objectstyle.wolips.eomodeler.utils.TablePropertyLabelProvider;
public class EOSortOrderingsLabelProvider extends TablePropertyLabelProvider {
public EOSortOrderingsLabelProvider(String tableName) {
super(tableName);
}
public Image getColumnImage(Object _element, String _property) {
EOSortOrdering sortOrdering = (EOSortOrdering) _element;
Image image = null;
if (EOSortOrdering.ASCENDING.equals(_property)) {
image = yesNoImage(Boolean.valueOf(sortOrdering.isAscending()), Activator.getDefault().getImageRegistry().get(Activator.ASCENDING_ICON), Activator.getDefault().getImageRegistry().get(Activator.DESCENDING_ICON), null);
}
return image;
}
protected String yesNoText(EOAttribute _attribute, Boolean _bool) {
return yesNoText(_bool, !_attribute.getEntity().isPrototype());
}
public String getColumnText(Object _element, String _property) {
EOSortOrdering sortOrdering = (EOSortOrdering) _element;
String text = null;
if (EOSortOrdering.ASCENDING.equals(_property)) {
// DO NOTHING
} else if (EOSortOrdering.CASE_INSENSITIVE.equals(_property)) {
text = yesNoText(Boolean.valueOf(sortOrdering.isCaseInsensitive()), "i", "s", true);
} else {
text = super.getColumnText(_element, _property);
}
return text;
}
}