001: package newprocess.diagram.providers;
002:
003: import java.util.HashSet;
004: import java.util.IdentityHashMap;
005: import java.util.Map;
006: import java.util.Set;
007:
008: import newprocess.NewprocessPackage;
009: import newprocess.diagram.part.New_processDiagramEditorPlugin;
010:
011: import org.eclipse.core.runtime.IAdaptable;
012: import org.eclipse.emf.ecore.EClass;
013: import org.eclipse.emf.ecore.ENamedElement;
014: import org.eclipse.emf.ecore.EStructuralFeature;
015: import org.eclipse.gmf.runtime.emf.type.core.ElementTypeRegistry;
016: import org.eclipse.gmf.runtime.emf.type.core.IElementType;
017: import org.eclipse.jface.resource.ImageDescriptor;
018: import org.eclipse.jface.resource.ImageRegistry;
019: import org.eclipse.swt.graphics.Image;
020:
021: /**
022: * @generated
023: */
024: public class New_processElementTypes extends ElementInitializers {
025:
026: /**
027: * @generated
028: */
029: private New_processElementTypes() {
030: }
031:
032: /**
033: * @generated
034: */
035: private static Map elements;
036:
037: /**
038: * @generated
039: */
040: private static ImageRegistry imageRegistry;
041:
042: /**
043: * @generated
044: */
045: private static ImageRegistry getImageRegistry() {
046: if (imageRegistry == null) {
047: imageRegistry = new ImageRegistry();
048: }
049: return imageRegistry;
050: }
051:
052: /**
053: * @generated
054: */
055: private static String getImageRegistryKey(ENamedElement element) {
056: return element.getName();
057: }
058:
059: /**
060: * @generated
061: */
062: private static ImageDescriptor getProvidedImageDescriptor(
063: ENamedElement element) {
064: if (element instanceof EStructuralFeature) {
065: element = ((EStructuralFeature) element)
066: .getEContainingClass();
067: }
068: if (element instanceof EClass) {
069: EClass eClass = (EClass) element;
070: if (!eClass.isAbstract()) {
071: return New_processDiagramEditorPlugin.getInstance()
072: .getItemImageDescriptor(
073: eClass.getEPackage()
074: .getEFactoryInstance().create(
075: eClass));
076: }
077: }
078: // TODO : support structural features
079: return null;
080: }
081:
082: /**
083: * @generated
084: */
085: public static ImageDescriptor getImageDescriptor(
086: ENamedElement element) {
087: String key = getImageRegistryKey(element);
088: ImageDescriptor imageDescriptor = getImageRegistry()
089: .getDescriptor(key);
090: if (imageDescriptor == null) {
091: imageDescriptor = getProvidedImageDescriptor(element);
092: if (imageDescriptor == null) {
093: imageDescriptor = ImageDescriptor
094: .getMissingImageDescriptor();
095: }
096: getImageRegistry().put(key, imageDescriptor);
097: }
098: return imageDescriptor;
099: }
100:
101: /**
102: * @generated
103: */
104: public static Image getImage(ENamedElement element) {
105: String key = getImageRegistryKey(element);
106: Image image = getImageRegistry().get(key);
107: if (image == null) {
108: ImageDescriptor imageDescriptor = getProvidedImageDescriptor(element);
109: if (imageDescriptor == null) {
110: imageDescriptor = ImageDescriptor
111: .getMissingImageDescriptor();
112: }
113: getImageRegistry().put(key, imageDescriptor);
114: image = getImageRegistry().get(key);
115: }
116: return image;
117: }
118:
119: /**
120: * @generated
121: */
122: public static ImageDescriptor getImageDescriptor(IAdaptable hint) {
123: ENamedElement element = getElement(hint);
124: if (element == null) {
125: return null;
126: }
127: return getImageDescriptor(element);
128: }
129:
130: /**
131: * @generated
132: */
133: public static Image getImage(IAdaptable hint) {
134: ENamedElement element = getElement(hint);
135: if (element == null) {
136: return null;
137: }
138: return getImage(element);
139: }
140:
141: /**
142: * Returns 'type' of the ecore object associated with the hint.
143: *
144: * @generated
145: */
146: public static ENamedElement getElement(IAdaptable hint) {
147: Object type = hint.getAdapter(IElementType.class);
148: if (elements == null) {
149: elements = new IdentityHashMap();
150:
151: elements.put(Process_1000, NewprocessPackage.eINSTANCE
152: .getProcess());
153:
154: elements.put(SyncActivity_2001, NewprocessPackage.eINSTANCE
155: .getSyncActivity());
156:
157: elements.put(Listener_2002, NewprocessPackage.eINSTANCE
158: .getListener());
159:
160: elements.put(AsyncActivity_2003,
161: NewprocessPackage.eINSTANCE.getAsyncActivity());
162:
163: elements.put(Event_2005, NewprocessPackage.eINSTANCE
164: .getEvent());
165:
166: elements.put(ConditionProxy_2006,
167: NewprocessPackage.eINSTANCE.getConditionProxy());
168:
169: elements.put(Actor_2007, NewprocessPackage.eINSTANCE
170: .getActor());
171:
172: elements.put(Message_2008, NewprocessPackage.eINSTANCE
173: .getMessage());
174:
175: elements.put(Expansion_2009, NewprocessPackage.eINSTANCE
176: .getExpansion());
177:
178: elements.put(Conclusion_2010, NewprocessPackage.eINSTANCE
179: .getConclusion());
180:
181: elements.put(Globals_2011, NewprocessPackage.eINSTANCE
182: .getGlobals());
183:
184: elements.put(Expression_3001, NewprocessPackage.eINSTANCE
185: .getExpression());
186:
187: elements.put(Root_3002, NewprocessPackage.eINSTANCE
188: .getRoot());
189:
190: elements.put(OrOperator_3003, NewprocessPackage.eINSTANCE
191: .getOrOperator());
192:
193: elements.put(AndOperator_3004, NewprocessPackage.eINSTANCE
194: .getAndOperator());
195:
196: elements.put(ConditionTerm_3005,
197: NewprocessPackage.eINSTANCE.getConditionTerm());
198:
199: elements.put(Expression_3006, NewprocessPackage.eINSTANCE
200: .getExpression());
201:
202: elements.put(Expression_3007, NewprocessPackage.eINSTANCE
203: .getExpression());
204:
205: elements.put(Expression_3008, NewprocessPackage.eINSTANCE
206: .getExpression());
207:
208: elements.put(Expression_3009, NewprocessPackage.eINSTANCE
209: .getExpression());
210:
211: elements.put(Expression_3010, NewprocessPackage.eINSTANCE
212: .getExpression());
213:
214: elements.put(Expression_3011, NewprocessPackage.eINSTANCE
215: .getExpression());
216:
217: elements.put(Expression_3012, NewprocessPackage.eINSTANCE
218: .getExpression());
219:
220: elements.put(Loader_3013, NewprocessPackage.eINSTANCE
221: .getLoader());
222:
223: elements.put(Condition_3014, NewprocessPackage.eINSTANCE
224: .getCondition());
225:
226: elements.put(AsyncActivityActor_4001,
227: NewprocessPackage.eINSTANCE
228: .getAsyncActivity_Actor());
229:
230: elements.put(RootTerm_4002, NewprocessPackage.eINSTANCE
231: .getRoot_Term());
232:
233: elements.put(OperatorTermSubTerm_4003,
234: NewprocessPackage.eINSTANCE
235: .getOperatorTerm_SubTerm());
236:
237: elements.put(ConditionTermConditionProxy_4004,
238: NewprocessPackage.eINSTANCE
239: .getConditionTerm_ConditionProxy());
240:
241: elements.put(ConclusionConclusionProxy_4005,
242: NewprocessPackage.eINSTANCE
243: .getConclusion_ConclusionProxy());
244:
245: elements.put(ExpansionExpansionProxy_4006,
246: NewprocessPackage.eINSTANCE
247: .getExpansion_ExpansionProxy());
248: }
249: return (ENamedElement) elements.get(type);
250: }
251:
252: /**
253: * @generated
254: */
255: public static final IElementType Process_1000 = getElementType("org.concept.diagram.Process_1000"); //$NON-NLS-1$
256: /**
257: * @generated
258: */
259: public static final IElementType SyncActivity_2001 = getElementType("org.concept.diagram.SyncActivity_2001"); //$NON-NLS-1$
260: /**
261: * @generated
262: */
263: public static final IElementType Listener_2002 = getElementType("org.concept.diagram.Listener_2002"); //$NON-NLS-1$
264: /**
265: * @generated
266: */
267: public static final IElementType AsyncActivity_2003 = getElementType("org.concept.diagram.AsyncActivity_2003"); //$NON-NLS-1$
268: /**
269: * @generated
270: */
271: public static final IElementType Event_2005 = getElementType("org.concept.diagram.Event_2005"); //$NON-NLS-1$
272: /**
273: * @generated
274: */
275: public static final IElementType ConditionProxy_2006 = getElementType("org.concept.diagram.ConditionProxy_2006"); //$NON-NLS-1$
276: /**
277: * @generated
278: */
279: public static final IElementType Actor_2007 = getElementType("org.concept.diagram.Actor_2007"); //$NON-NLS-1$
280: /**
281: * @generated
282: */
283: public static final IElementType Message_2008 = getElementType("org.concept.diagram.Message_2008"); //$NON-NLS-1$
284: /**
285: * @generated
286: */
287: public static final IElementType Expansion_2009 = getElementType("org.concept.diagram.Expansion_2009"); //$NON-NLS-1$
288: /**
289: * @generated
290: */
291: public static final IElementType Conclusion_2010 = getElementType("org.concept.diagram.Conclusion_2010"); //$NON-NLS-1$
292: /**
293: * @generated
294: */
295: public static final IElementType Globals_2011 = getElementType("org.concept.diagram.Globals_2011"); //$NON-NLS-1$
296: /**
297: * @generated
298: */
299: public static final IElementType Expression_3001 = getElementType("org.concept.diagram.Expression_3001"); //$NON-NLS-1$
300: /**
301: * @generated
302: */
303: public static final IElementType Root_3002 = getElementType("org.concept.diagram.Root_3002"); //$NON-NLS-1$
304: /**
305: * @generated
306: */
307: public static final IElementType OrOperator_3003 = getElementType("org.concept.diagram.OrOperator_3003"); //$NON-NLS-1$
308: /**
309: * @generated
310: */
311: public static final IElementType AndOperator_3004 = getElementType("org.concept.diagram.AndOperator_3004"); //$NON-NLS-1$
312: /**
313: * @generated
314: */
315: public static final IElementType ConditionTerm_3005 = getElementType("org.concept.diagram.ConditionTerm_3005"); //$NON-NLS-1$
316: /**
317: * @generated
318: */
319: public static final IElementType Expression_3006 = getElementType("org.concept.diagram.Expression_3006"); //$NON-NLS-1$
320: /**
321: * @generated
322: */
323: public static final IElementType Expression_3007 = getElementType("org.concept.diagram.Expression_3007"); //$NON-NLS-1$
324: /**
325: * @generated
326: */
327: public static final IElementType Expression_3008 = getElementType("org.concept.diagram.Expression_3008"); //$NON-NLS-1$
328: /**
329: * @generated
330: */
331: public static final IElementType Expression_3009 = getElementType("org.concept.diagram.Expression_3009"); //$NON-NLS-1$
332: /**
333: * @generated
334: */
335: public static final IElementType Expression_3010 = getElementType("org.concept.diagram.Expression_3010"); //$NON-NLS-1$
336: /**
337: * @generated
338: */
339: public static final IElementType Expression_3011 = getElementType("org.concept.diagram.Expression_3011"); //$NON-NLS-1$
340: /**
341: * @generated
342: */
343: public static final IElementType Expression_3012 = getElementType("org.concept.diagram.Expression_3012"); //$NON-NLS-1$
344: /**
345: * @generated
346: */
347: public static final IElementType Loader_3013 = getElementType("org.concept.diagram.Loader_3013"); //$NON-NLS-1$
348: /**
349: * @generated
350: */
351: public static final IElementType Condition_3014 = getElementType("org.concept.diagram.Condition_3014"); //$NON-NLS-1$
352: /**
353: * @generated
354: */
355: public static final IElementType AsyncActivityActor_4001 = getElementType("org.concept.diagram.AsyncActivityActor_4001"); //$NON-NLS-1$
356: /**
357: * @generated
358: */
359: public static final IElementType RootTerm_4002 = getElementType("org.concept.diagram.RootTerm_4002"); //$NON-NLS-1$
360: /**
361: * @generated
362: */
363: public static final IElementType OperatorTermSubTerm_4003 = getElementType("org.concept.diagram.OperatorTermSubTerm_4003"); //$NON-NLS-1$
364: /**
365: * @generated
366: */
367: public static final IElementType ConditionTermConditionProxy_4004 = getElementType("org.concept.diagram.ConditionTermConditionProxy_4004"); //$NON-NLS-1$
368: /**
369: * @generated
370: */
371: public static final IElementType ConclusionConclusionProxy_4005 = getElementType("org.concept.diagram.ConclusionConclusionProxy_4005"); //$NON-NLS-1$
372: /**
373: * @generated
374: */
375: public static final IElementType ExpansionExpansionProxy_4006 = getElementType("org.concept.diagram.ExpansionExpansionProxy_4006"); //$NON-NLS-1$
376:
377: /**
378: * @generated
379: */
380: private static IElementType getElementType(String id) {
381: return ElementTypeRegistry.getInstance().getType(id);
382: }
383:
384: /**
385: * @generated
386: */
387: private static Set KNOWN_ELEMENT_TYPES;
388:
389: /**
390: * @generated
391: */
392: public static boolean isKnownElementType(IElementType elementType) {
393: if (KNOWN_ELEMENT_TYPES == null) {
394: KNOWN_ELEMENT_TYPES = new HashSet();
395: KNOWN_ELEMENT_TYPES.add(Process_1000);
396: KNOWN_ELEMENT_TYPES.add(SyncActivity_2001);
397: KNOWN_ELEMENT_TYPES.add(Listener_2002);
398: KNOWN_ELEMENT_TYPES.add(AsyncActivity_2003);
399: KNOWN_ELEMENT_TYPES.add(Event_2005);
400: KNOWN_ELEMENT_TYPES.add(ConditionProxy_2006);
401: KNOWN_ELEMENT_TYPES.add(Actor_2007);
402: KNOWN_ELEMENT_TYPES.add(Message_2008);
403: KNOWN_ELEMENT_TYPES.add(Expansion_2009);
404: KNOWN_ELEMENT_TYPES.add(Conclusion_2010);
405: KNOWN_ELEMENT_TYPES.add(Globals_2011);
406: KNOWN_ELEMENT_TYPES.add(Expression_3001);
407: KNOWN_ELEMENT_TYPES.add(Root_3002);
408: KNOWN_ELEMENT_TYPES.add(OrOperator_3003);
409: KNOWN_ELEMENT_TYPES.add(AndOperator_3004);
410: KNOWN_ELEMENT_TYPES.add(ConditionTerm_3005);
411: KNOWN_ELEMENT_TYPES.add(Expression_3006);
412: KNOWN_ELEMENT_TYPES.add(Expression_3007);
413: KNOWN_ELEMENT_TYPES.add(Expression_3008);
414: KNOWN_ELEMENT_TYPES.add(Expression_3009);
415: KNOWN_ELEMENT_TYPES.add(Expression_3010);
416: KNOWN_ELEMENT_TYPES.add(Expression_3011);
417: KNOWN_ELEMENT_TYPES.add(Expression_3012);
418: KNOWN_ELEMENT_TYPES.add(Loader_3013);
419: KNOWN_ELEMENT_TYPES.add(Condition_3014);
420: KNOWN_ELEMENT_TYPES.add(AsyncActivityActor_4001);
421: KNOWN_ELEMENT_TYPES.add(RootTerm_4002);
422: KNOWN_ELEMENT_TYPES.add(OperatorTermSubTerm_4003);
423: KNOWN_ELEMENT_TYPES.add(ConditionTermConditionProxy_4004);
424: KNOWN_ELEMENT_TYPES.add(ConclusionConclusionProxy_4005);
425: KNOWN_ELEMENT_TYPES.add(ExpansionExpansionProxy_4006);
426: }
427: return KNOWN_ELEMENT_TYPES.contains(elementType);
428: }
429: }
|