X-Git-Url: http://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=org.argeo.suite.workbench.rap%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fworkbench%2Finternal%2FEntitySingleColumnLabelProvider.java;fp=org.argeo.suite.workbench.rap%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fworkbench%2Finternal%2FEntitySingleColumnLabelProvider.java;h=0000000000000000000000000000000000000000;hp=49c39a58d9021c6c6d2e074acb151d915a4b0557;hb=9b434abf555b36bbdb51729742f70f25b7abd5a3;hpb=a4592339d582315077ae7bb87043a6ec7a8bd4a2 diff --git a/org.argeo.suite.workbench.rap/src/org/argeo/suite/workbench/internal/EntitySingleColumnLabelProvider.java b/org.argeo.suite.workbench.rap/src/org/argeo/suite/workbench/internal/EntitySingleColumnLabelProvider.java deleted file mode 100644 index 49c39a5..0000000 --- a/org.argeo.suite.workbench.rap/src/org/argeo/suite/workbench/internal/EntitySingleColumnLabelProvider.java +++ /dev/null @@ -1,88 +0,0 @@ -package org.argeo.suite.workbench.internal; - -import javax.jcr.Node; -import javax.jcr.Property; -import javax.jcr.RepositoryException; -import javax.jcr.nodetype.NodeType; - -import org.argeo.activities.ActivitiesService; -import org.argeo.activities.ActivitiesTypes; -import org.argeo.activities.ui.ActivityListLabelProvider; -import org.argeo.connect.resources.ResourcesService; -import org.argeo.connect.ui.ConnectUiConstants; -import org.argeo.connect.ui.SystemWorkbenchService; -import org.argeo.connect.ui.util.TagLabelProvider; -import org.argeo.connect.util.ConnectUtils; -import org.argeo.people.PeopleException; -import org.argeo.people.PeopleNames; -import org.argeo.people.PeopleService; -import org.argeo.people.PeopleTypes; -import org.argeo.people.ui.providers.GroupLabelProvider; -import org.argeo.people.ui.providers.OrgListLabelProvider; -import org.argeo.people.ui.providers.PersonListLabelProvider; -import org.argeo.tracker.TrackerTypes; -import org.argeo.tracker.ui.TrackerSingleColLP; -import org.eclipse.jface.viewers.LabelProvider; -import org.eclipse.swt.graphics.Image; - -/** - * Provide a single column label provider for entity lists. Icon and displayed - * text vary with the element node type - */ -public class EntitySingleColumnLabelProvider extends LabelProvider implements PeopleNames { - private static final long serialVersionUID = 3111885324210673320L; - - private SystemWorkbenchService systemWorkbenchService; - - private ActivityListLabelProvider activityLP; - private TrackerSingleColLP trackerLP; - private OrgListLabelProvider orgLp; - private PersonListLabelProvider personLp; - private GroupLabelProvider groupLp = new GroupLabelProvider(ConnectUiConstants.LIST_TYPE_SMALL); - private TagLabelProvider mlInstanceLp; - - public EntitySingleColumnLabelProvider(ResourcesService resourceService, ActivitiesService activitiesService, - PeopleService peopleService, SystemWorkbenchService systemWorkbenchService) { - this.systemWorkbenchService = systemWorkbenchService; - activityLP = new ActivityListLabelProvider(activitiesService); - trackerLP = new TrackerSingleColLP(activitiesService); - personLp = new PersonListLabelProvider(peopleService); - orgLp = new OrgListLabelProvider(resourceService, peopleService); - mlInstanceLp = new TagLabelProvider(resourceService, ConnectUiConstants.LIST_TYPE_SMALL); - } - - @Override - public String getText(Object element) { - try { - Node entity = (Node) element; - String result; - - if (entity.isNodeType(TrackerTypes.TRACKER_TASK) || entity.isNodeType(TrackerTypes.TRACKER_PROJECT) - || entity.isNodeType(TrackerTypes.TRACKER_MILESTONE)) - result = trackerLP.getText(element); - else if (entity.isNodeType(ActivitiesTypes.ACTIVITIES_ACTIVITY)) - result = activityLP.getText(element); - else if (entity.isNodeType(PeopleTypes.PEOPLE_PERSON)) - result = personLp.getText(element); - else if (entity.isNodeType(PeopleTypes.PEOPLE_ORG)) - result = orgLp.getText(element); - else if (entity.isNodeType(PeopleTypes.PEOPLE_MAILING_LIST)) - result = mlInstanceLp.getText(element); - else if (entity.isNodeType(PeopleTypes.PEOPLE_GROUP)) - result = groupLp.getText(element); - else if (entity.isNodeType(NodeType.MIX_TITLE) && entity.hasProperty(Property.JCR_TITLE)) - result = entity.getProperty(Property.JCR_TITLE).getString(); - else - result = ""; - return ConnectUtils.replaceAmpersand(result); - } catch (RepositoryException re) { - throw new PeopleException("Unable to get formatted value for node", re); - } - } - - /** Overwrite this method to provide project specific images */ - @Override - public Image getImage(Object element) { - return systemWorkbenchService.getIconForType((Node) element); - } -}