package net.certware.sacm.navigator; import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.jface.viewers.ILabelProviderListener; import org.eclipse.swt.graphics.Image; import org.eclipse.ui.navigator.IDescriptionProvider; /** * Label provider for navigator contribution. * Provides summary data about the model resource. * @author mrb * @since 1.0 */ public class LabelProvider implements ILabelProvider, IDescriptionProvider { /** * Constructor creates the image references. */ public LabelProvider() { } @Override public void addListener(ILabelProviderListener listener) { } @Override public void dispose() { } @Override public boolean isLabelProperty(Object element, String property) { return false; } @Override public void removeListener(ILabelProviderListener listener) { } @Override public String getDescription(Object anElement) { if ( anElement instanceof TreeData ) { TreeData td = (TreeData)anElement; return getText(td); } return null; } @Override public Image getImage(Object element) { if ( element instanceof TreeData ) { TreeData td = (TreeData)element; if ( td.getType() == TreeData.COUNT_TYPE_ANNOTATIONS ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_ANNOTATIONS); if ( td.getType() == TreeData.COUNT_TYPE_ASSURANCE_CASES ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_ASSURANCE_CASES); if ( td.getType() == TreeData.COUNT_TYPE_DATE_TIMES ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_DATE_TIMES); if ( td.getType() == TreeData.COUNT_TYPE_MODEL_ELEMENTS ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_MODEL_ELEMENTS); if ( td.getType() == TreeData.COUNT_TYPE_SACM_ELEMENTS ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_SACM_ELEMENTS); if ( td.getType() == TreeData.COUNT_TYPE_TAGGED_VALUES ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_TAGGED_VALUES); if ( td.getType() == TreeData.COUNT_TYPE_UTILITY_ELEMENTS ) return Activator.getDefault().getImageRegistry().get(Activator.NODE_UTILITY_ELEMENTS); } return null; } @Override public String getText(Object element) { if ( element instanceof TreeData ) { TreeData td = (TreeData)element; if ( td.getCount() < 0 ) return td.getDescription(); return td.getDescription() + ' ' + td.getCount(); } return null; } }