package net.certware.argument.caz.diagram.providers; import java.util.HashSet; import java.util.IdentityHashMap; import java.util.Map; import java.util.Set; import net.certware.argument.caz.CazPackage; import net.certware.argument.caz.diagram.edit.parts.ArgumentArgumentClaimsEditPart; import net.certware.argument.caz.diagram.edit.parts.ArgumentArgumentEvidenceEditPart; import net.certware.argument.caz.diagram.edit.parts.ArgumentArgumentJustificationEditPart; import net.certware.argument.caz.diagram.edit.parts.ArgumentDiagramEditPart; import net.certware.argument.caz.diagram.edit.parts.ArgumentEditPart; import net.certware.argument.caz.diagram.edit.parts.AssumptionEditPart; import net.certware.argument.caz.diagram.edit.parts.ClaimClaimAssumptionsEditPart; import net.certware.argument.caz.diagram.edit.parts.ClaimClaimContextsEditPart; import net.certware.argument.caz.diagram.edit.parts.ClaimClaimSolutionsEditPart; import net.certware.argument.caz.diagram.edit.parts.ClaimClaimStrategiesEditPart; import net.certware.argument.caz.diagram.edit.parts.ClaimEditPart; import net.certware.argument.caz.diagram.edit.parts.ClaimSubClaimsEditPart; import net.certware.argument.caz.diagram.edit.parts.ContextEditPart; import net.certware.argument.caz.diagram.edit.parts.EvidenceEditPart; import net.certware.argument.caz.diagram.edit.parts.EvidenceEvidenceContextsEditPart; import net.certware.argument.caz.diagram.edit.parts.EvidenceEvidenceEditPart; import net.certware.argument.caz.diagram.edit.parts.JustificationEditPart; import net.certware.argument.caz.diagram.part.CazDiagramEditorPlugin; import org.eclipse.core.runtime.IAdaptable; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EClassifier; import org.eclipse.emf.ecore.ENamedElement; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.gmf.runtime.emf.type.core.ElementTypeRegistry; import org.eclipse.gmf.runtime.emf.type.core.IElementType; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.swt.graphics.Image; /** * @generated */ public class CazElementTypes { /** * @generated */ private CazElementTypes() { } /** * @generated */ private static Map<IElementType, ENamedElement> elements; /** * @generated */ private static ImageRegistry imageRegistry; /** * @generated */ private static Set<IElementType> KNOWN_ELEMENT_TYPES; /** * @generated */ public static final IElementType ArgumentDiagram_1000 = getElementType("net.certware.argument.caz.diagram.ArgumentDiagram_1000"); //$NON-NLS-1$ /** * @generated */ public static final IElementType Claim_2001 = getElementType("net.certware.argument.caz.diagram.Claim_2001"); //$NON-NLS-1$ /** * @generated */ public static final IElementType Evidence_2002 = getElementType("net.certware.argument.caz.diagram.Evidence_2002"); //$NON-NLS-1$ /** * @generated */ public static final IElementType Argument_2003 = getElementType("net.certware.argument.caz.diagram.Argument_2003"); //$NON-NLS-1$ /** * @generated */ public static final IElementType Assumption_2004 = getElementType("net.certware.argument.caz.diagram.Assumption_2004"); //$NON-NLS-1$ /** * @generated */ public static final IElementType Justification_2005 = getElementType("net.certware.argument.caz.diagram.Justification_2005"); //$NON-NLS-1$ /** * @generated */ public static final IElementType Context_2006 = getElementType("net.certware.argument.caz.diagram.Context_2006"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ClaimClaimStrategies_4001 = getElementType("net.certware.argument.caz.diagram.ClaimClaimStrategies_4001"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ClaimClaimAssumptions_4002 = getElementType("net.certware.argument.caz.diagram.ClaimClaimAssumptions_4002"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ClaimClaimContexts_4003 = getElementType("net.certware.argument.caz.diagram.ClaimClaimContexts_4003"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ClaimClaimSolutions_4004 = getElementType("net.certware.argument.caz.diagram.ClaimClaimSolutions_4004"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ClaimSubClaims_4005 = getElementType("net.certware.argument.caz.diagram.ClaimSubClaims_4005"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ArgumentArgumentJustification_4006 = getElementType("net.certware.argument.caz.diagram.ArgumentArgumentJustification_4006"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ArgumentArgumentEvidence_4007 = getElementType("net.certware.argument.caz.diagram.ArgumentArgumentEvidence_4007"); //$NON-NLS-1$ /** * @generated */ public static final IElementType ArgumentArgumentClaims_4008 = getElementType("net.certware.argument.caz.diagram.ArgumentArgumentClaims_4008"); //$NON-NLS-1$ /** * @generated */ public static final IElementType EvidenceEvidenceContexts_4009 = getElementType("net.certware.argument.caz.diagram.EvidenceEvidenceContexts_4009"); //$NON-NLS-1$ /** * @generated */ public static final IElementType EvidenceEvidence_4010 = getElementType("net.certware.argument.caz.diagram.EvidenceEvidence_4010"); //$NON-NLS-1$ /** * @generated */ private static ImageRegistry getImageRegistry() { if (imageRegistry == null) { imageRegistry = new ImageRegistry(); } return imageRegistry; } /** * @generated */ private static String getImageRegistryKey(ENamedElement element) { return element.getName(); } /** * @generated */ private static ImageDescriptor getProvidedImageDescriptor( ENamedElement element) { if (element instanceof EStructuralFeature) { EStructuralFeature feature = ((EStructuralFeature) element); EClass eContainingClass = feature.getEContainingClass(); EClassifier eType = feature.getEType(); if (eContainingClass != null && !eContainingClass.isAbstract()) { element = eContainingClass; } else if (eType instanceof EClass && !((EClass) eType).isAbstract()) { element = eType; } } if (element instanceof EClass) { EClass eClass = (EClass) element; if (!eClass.isAbstract()) { return CazDiagramEditorPlugin.getInstance() .getItemImageDescriptor( eClass.getEPackage().getEFactoryInstance() .create(eClass)); } } // TODO : support structural features return null; } /** * @generated */ public static ImageDescriptor getImageDescriptor(ENamedElement element) { String key = getImageRegistryKey(element); ImageDescriptor imageDescriptor = getImageRegistry().getDescriptor(key); if (imageDescriptor == null) { imageDescriptor = getProvidedImageDescriptor(element); if (imageDescriptor == null) { imageDescriptor = ImageDescriptor.getMissingImageDescriptor(); } getImageRegistry().put(key, imageDescriptor); } return imageDescriptor; } /** * @generated */ public static Image getImage(ENamedElement element) { String key = getImageRegistryKey(element); Image image = getImageRegistry().get(key); if (image == null) { ImageDescriptor imageDescriptor = getProvidedImageDescriptor(element); if (imageDescriptor == null) { imageDescriptor = ImageDescriptor.getMissingImageDescriptor(); } getImageRegistry().put(key, imageDescriptor); image = getImageRegistry().get(key); } return image; } /** * @generated */ public static ImageDescriptor getImageDescriptor(IAdaptable hint) { ENamedElement element = getElement(hint); if (element == null) { return null; } return getImageDescriptor(element); } /** * @generated */ public static Image getImage(IAdaptable hint) { ENamedElement element = getElement(hint); if (element == null) { return null; } return getImage(element); } /** * Returns 'type' of the ecore object associated with the hint. * * @generated */ public static ENamedElement getElement(IAdaptable hint) { Object type = hint.getAdapter(IElementType.class); if (elements == null) { elements = new IdentityHashMap<IElementType, ENamedElement>(); elements.put(ArgumentDiagram_1000, CazPackage.eINSTANCE.getArgumentDiagram()); elements.put(Claim_2001, CazPackage.eINSTANCE.getClaim()); elements.put(Evidence_2002, CazPackage.eINSTANCE.getEvidence()); elements.put(Argument_2003, CazPackage.eINSTANCE.getArgument()); elements.put(Assumption_2004, CazPackage.eINSTANCE.getAssumption()); elements.put(Justification_2005, CazPackage.eINSTANCE.getJustification()); elements.put(Context_2006, CazPackage.eINSTANCE.getContext()); elements.put(ClaimClaimStrategies_4001, CazPackage.eINSTANCE.getClaim_ClaimStrategies()); elements.put(ClaimClaimAssumptions_4002, CazPackage.eINSTANCE.getClaim_ClaimAssumptions()); elements.put(ClaimClaimContexts_4003, CazPackage.eINSTANCE.getClaim_ClaimContexts()); elements.put(ClaimClaimSolutions_4004, CazPackage.eINSTANCE.getClaim_ClaimSolutions()); elements.put(ClaimSubClaims_4005, CazPackage.eINSTANCE.getClaim_SubClaims()); elements.put(ArgumentArgumentJustification_4006, CazPackage.eINSTANCE.getArgument_ArgumentJustification()); elements.put(ArgumentArgumentEvidence_4007, CazPackage.eINSTANCE.getArgument_ArgumentEvidence()); elements.put(ArgumentArgumentClaims_4008, CazPackage.eINSTANCE.getArgument_ArgumentClaims()); elements.put(EvidenceEvidenceContexts_4009, CazPackage.eINSTANCE.getEvidence_EvidenceContexts()); elements.put(EvidenceEvidence_4010, CazPackage.eINSTANCE.getEvidence_Evidence()); } return (ENamedElement) elements.get(type); } /** * @generated */ private static IElementType getElementType(String id) { return ElementTypeRegistry.getInstance().getType(id); } /** * @generated */ public static boolean isKnownElementType(IElementType elementType) { if (KNOWN_ELEMENT_TYPES == null) { KNOWN_ELEMENT_TYPES = new HashSet<IElementType>(); KNOWN_ELEMENT_TYPES.add(ArgumentDiagram_1000); KNOWN_ELEMENT_TYPES.add(Claim_2001); KNOWN_ELEMENT_TYPES.add(Evidence_2002); KNOWN_ELEMENT_TYPES.add(Argument_2003); KNOWN_ELEMENT_TYPES.add(Assumption_2004); KNOWN_ELEMENT_TYPES.add(Justification_2005); KNOWN_ELEMENT_TYPES.add(Context_2006); KNOWN_ELEMENT_TYPES.add(ClaimClaimStrategies_4001); KNOWN_ELEMENT_TYPES.add(ClaimClaimAssumptions_4002); KNOWN_ELEMENT_TYPES.add(ClaimClaimContexts_4003); KNOWN_ELEMENT_TYPES.add(ClaimClaimSolutions_4004); KNOWN_ELEMENT_TYPES.add(ClaimSubClaims_4005); KNOWN_ELEMENT_TYPES.add(ArgumentArgumentJustification_4006); KNOWN_ELEMENT_TYPES.add(ArgumentArgumentEvidence_4007); KNOWN_ELEMENT_TYPES.add(ArgumentArgumentClaims_4008); KNOWN_ELEMENT_TYPES.add(EvidenceEvidenceContexts_4009); KNOWN_ELEMENT_TYPES.add(EvidenceEvidence_4010); } return KNOWN_ELEMENT_TYPES.contains(elementType); } /** * @generated */ public static IElementType getElementType(int visualID) { switch (visualID) { case ArgumentDiagramEditPart.VISUAL_ID: return ArgumentDiagram_1000; case ClaimEditPart.VISUAL_ID: return Claim_2001; case EvidenceEditPart.VISUAL_ID: return Evidence_2002; case ArgumentEditPart.VISUAL_ID: return Argument_2003; case AssumptionEditPart.VISUAL_ID: return Assumption_2004; case JustificationEditPart.VISUAL_ID: return Justification_2005; case ContextEditPart.VISUAL_ID: return Context_2006; case ClaimClaimStrategiesEditPart.VISUAL_ID: return ClaimClaimStrategies_4001; case ClaimClaimAssumptionsEditPart.VISUAL_ID: return ClaimClaimAssumptions_4002; case ClaimClaimContextsEditPart.VISUAL_ID: return ClaimClaimContexts_4003; case ClaimClaimSolutionsEditPart.VISUAL_ID: return ClaimClaimSolutions_4004; case ClaimSubClaimsEditPart.VISUAL_ID: return ClaimSubClaims_4005; case ArgumentArgumentJustificationEditPart.VISUAL_ID: return ArgumentArgumentJustification_4006; case ArgumentArgumentEvidenceEditPart.VISUAL_ID: return ArgumentArgumentEvidence_4007; case ArgumentArgumentClaimsEditPart.VISUAL_ID: return ArgumentArgumentClaims_4008; case EvidenceEvidenceContextsEditPart.VISUAL_ID: return EvidenceEvidenceContexts_4009; case EvidenceEvidenceEditPart.VISUAL_ID: return EvidenceEvidence_4010; } return null; } }