1 27 28 package org.nightlabs.editor2d.model; 29 30 import org.eclipse.gef.requests.CreationFactory; 31 32 import org.nightlabs.editor2d.DrawComponentContainer; 33 import org.nightlabs.editor2d.Editor2DFactory; 34 import org.nightlabs.editor2d.EditorGuide; 35 import org.nightlabs.editor2d.EditorRuler; 36 import org.nightlabs.editor2d.EllipseDrawComponent; 37 import org.nightlabs.editor2d.ImageDrawComponent; 38 import org.nightlabs.editor2d.Layer; 39 import org.nightlabs.editor2d.LineDrawComponent; 40 import org.nightlabs.editor2d.MultiLayerDrawComponent; 41 import org.nightlabs.editor2d.RectangleDrawComponent; 42 import org.nightlabs.editor2d.TextDrawComponent; 43 44 public class ModelCreationFactory 45 implements CreationFactory 46 { 47 protected Class targetClass; 48 49 public ModelCreationFactory( Class targetClass ) { 50 this.targetClass = targetClass; 51 } 52 53 56 public Object getNewObject() 57 { 58 64 Editor2DFactory factory = Editor2DFactory.eINSTANCE; 65 66 Object result = null; 67 68 if( targetClass.equals(RectangleDrawComponent.class)) { 69 result = factory.createRectangleDrawComponent(); 70 } 71 else if( targetClass.equals(Layer.class)) { 72 result = factory.createLayer(); 73 } 74 else if( targetClass.equals(EllipseDrawComponent.class)) { 75 result = factory.createEllipseDrawComponent(); 76 } 77 else if( targetClass.equals(MultiLayerDrawComponent.class)) { 78 result = factory.createMultiLayerDrawComponent(); 79 } 80 else if (targetClass.equals(DrawComponentContainer.class)) { 81 result = factory.createDrawComponentContainer(); 82 } 83 else if( targetClass.equals(EditorGuide.class)) { 84 result = factory.createEditorGuide(); 85 } 86 else if ( targetClass.equals(EditorRuler.class)) { 87 result = factory.createEditorRuler(); 88 } 89 else if ( targetClass.equals(LineDrawComponent.class)) { 90 result = factory.createLineDrawComponent(); 91 } 92 else if ( targetClass.equals(TextDrawComponent.class)) { 93 result = factory.createTextDrawComponent(); 94 } 95 else if ( targetClass.equals(ImageDrawComponent.class)) { 96 result = factory.createImageDrawComponent(); 97 } 98 99 return result; 100 } 101 102 105 public Object getObjectType() 106 { 107 return targetClass; 108 } 109 } 110 111 | Popular Tags |