/******************************************************************************* * Copyright (c) 2013 itemis AG (http://www.itemis.eu). * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html ******************************************************************************/ /* * generated by Xtext */ package de.itemis.tooling.terminology.ui.labeling; import org.eclipse.xtext.resource.IEObjectDescription; import org.eclipse.xtext.ui.label.DefaultDescriptionLabelProvider; import de.itemis.tooling.terminology.terminology.TermStatus; import de.itemis.tooling.terminology.terminology.TerminologyPackage; /** * Provides labels for a IEObjectDescriptions and IResourceDescriptions. * * see http://www.eclipse.org/Xtext/documentation/latest/xtext.html#labelProvider */ public class TerminologyDescriptionLabelProvider extends DefaultDescriptionLabelProvider { /* //Labels and icons can be computed like this: String text(IEObjectDescription ele) { return "my "+ele.getName(); } String image(IEObjectDescription ele) { return ele.getEClass().getName() + ".gif"; } */ @Override public String text(IEObjectDescription ele) { if(ele.getEClass()==TerminologyPackage.Literals.TERM){ return ele.getName().getLastSegment()+ " - Term"; } return (String)super.text(ele); } public String image(IEObjectDescription ele) { if(ele.getEClass()==TerminologyPackage.Literals.TERM){ String result=null; try { TermStatus status = TermStatus.getByName(ele.getUserData("status")); switch(status){ case PREFERRED:result="public_co.gif";break; case PERMITTED:result="protected_co.gif";break; case REJECTED:result="private_co.gif";break; case SUPERSEDED:result="compare_method.gif";break; } return result; } catch (Exception e) { return null; } } return (String)super.image(ele); } }