package org.nightlabs.jfire.personrelation.issuetracking.trade.ui.tree;
import org.eclipse.swt.graphics.Image;
import org.nightlabs.base.ui.resource.SharedImages;
import org.nightlabs.jdo.ObjectID;
import org.nightlabs.jfire.issue.IssueDescription;
import org.nightlabs.jfire.issue.id.IssueDescriptionID;
import org.nightlabs.jfire.personrelation.issuetracking.trade.ui.Activator;
import org.nightlabs.jfire.personrelation.ui.tree.AbstractPersonRelationTreeLabelProviderDelegate;
import org.nightlabs.util.NLLocale;
public class IssueDescriptionPersonRelationTreeLabelProviderDelegate extends AbstractPersonRelationTreeLabelProviderDelegate
{
private String languageID = NLLocale.getDefault().getLanguage();
@Override
public Class<?> getJDOObjectClass() {
return IssueDescription.class;
}
@Override
public Class<? extends ObjectID> getJDOObjectIDClass() {
return IssueDescriptionID.class;
}
@Override
public int[][] getJDOObjectColumnSpan(ObjectID jdoObjectID, Object jdoObject) {
if (jdoObject == null)
return null;
return new int[][] { {0, 1} };
}
@Override
public String getJDOObjectText(ObjectID jdoObjectID, Object jdoObject, int spanColIndex) {
if (jdoObject == null) {
if (spanColIndex != 0)
return null;
IssueDescriptionID issueDescriptionID = (IssueDescriptionID) jdoObjectID;
return issueDescriptionID.organisationID + '/' + issueDescriptionID.issueID;
}
IssueDescription issueDescription = (IssueDescription) jdoObject;
switch (spanColIndex) {
case 0:
return issueDescription.getText(languageID);
}
return null;
}
@Override
public Image getJDOObjectImage(ObjectID jdoObjectID, Object jdoObject, int spanColIndex) {
if (spanColIndex == 0) {
return SharedImages.getSharedImage(Activator.getDefault(), IssueDescriptionPersonRelationTreeLabelProviderDelegate.class);
}
return null;
}
}