1 27 28 package org.nightlabs.editor2d.edit.tree; 29 30 import org.eclipse.gef.EditPart; 31 import org.eclipse.gef.EditPartFactory; 32 33 import org.nightlabs.editor2d.EllipseDrawComponent; 34 import org.nightlabs.editor2d.ImageDrawComponent; 35 import org.nightlabs.editor2d.Layer; 36 import org.nightlabs.editor2d.LineDrawComponent; 37 import org.nightlabs.editor2d.MultiLayerDrawComponent; 38 import org.nightlabs.editor2d.RectangleDrawComponent; 39 import org.nightlabs.editor2d.TextDrawComponent; 40 import org.nightlabs.editor2d.outline.filter.FilterManager; 41 42 43 public class TreePartFactory 44 implements EditPartFactory 45 { 46 public TreePartFactory(FilterManager filterMan) 47 { 48 if (filterMan == null) 49 throw new IllegalArgumentException ("Param filterMan must not be null!"); 50 51 this.filterMan = filterMan; 52 } 53 protected FilterManager filterMan; 54 55 public EditPart createEditPart(EditPart context, Object model) 56 { 57 if (model instanceof MultiLayerDrawComponent) 58 return new MultiLayerDrawComponentTreeEditPart((MultiLayerDrawComponent)model, filterMan); 59 60 else if (model instanceof Layer) 61 return new LayerTreeEditPart((Layer)model); 62 63 else if (model instanceof EllipseDrawComponent) 64 return new EllipseTreeEditPart((EllipseDrawComponent)model); 65 66 else if (model instanceof RectangleDrawComponent) 67 return new RectangleTreeEditPart((RectangleDrawComponent)model); 68 69 else if (model instanceof LineDrawComponent) 70 return new LineTreeEditPart((LineDrawComponent)model); 71 72 else if (model instanceof TextDrawComponent) 73 return new TextTreeEditPart((TextDrawComponent)model); 74 75 else if (model instanceof ImageDrawComponent) 76 return new ImageTreeEditPart((ImageDrawComponent)model); 77 78 return null; 79 } 80 81 } 82 | Popular Tags |