| package org.eclipse.gmf.tooling.examples.linklf.diagram.providers.assistants; |
| |
| import java.util.ArrayList; |
| import java.util.LinkedList; |
| import java.util.List; |
| |
| import org.eclipse.core.runtime.IAdaptable; |
| import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; |
| import org.eclipse.gmf.runtime.emf.type.core.IElementType; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.Circle2EditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.CircleEditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.PortEditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.Rectangle2EditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.RectangleEditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.Rhombus2EditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.edit.parts.RhombusEditPart; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.providers.LinklfElementTypes; |
| import org.eclipse.gmf.tooling.examples.linklf.diagram.providers.LinklfModelingAssistantProvider; |
| |
| /** |
| * @generated |
| */ |
| public class LinklfModelingAssistantProviderOfRhombusEditPart extends LinklfModelingAssistantProvider { |
| |
| /** |
| * @generated |
| */ |
| @Override |
| public List<IElementType> getRelTypesOnSource(IAdaptable source) { |
| IGraphicalEditPart sourceEditPart = (IGraphicalEditPart) source.getAdapter(IGraphicalEditPart.class); |
| return doGetRelTypesOnSource((RhombusEditPart) sourceEditPart); |
| } |
| |
| /** |
| * @generated |
| */ |
| public List<IElementType> doGetRelTypesOnSource(RhombusEditPart source) { |
| List<IElementType> types = new ArrayList<IElementType>(2); |
| types.add(LinklfElementTypes.Link_4001); |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| return types; |
| } |
| |
| /** |
| * @generated |
| */ |
| @Override |
| public List<IElementType> getRelTypesOnSourceAndTarget(IAdaptable source, IAdaptable target) { |
| IGraphicalEditPart sourceEditPart = (IGraphicalEditPart) source.getAdapter(IGraphicalEditPart.class); |
| IGraphicalEditPart targetEditPart = (IGraphicalEditPart) target.getAdapter(IGraphicalEditPart.class); |
| return doGetRelTypesOnSourceAndTarget((RhombusEditPart) sourceEditPart, targetEditPart); |
| } |
| |
| /** |
| * @generated |
| */ |
| public List<IElementType> doGetRelTypesOnSourceAndTarget(RhombusEditPart source, IGraphicalEditPart targetEditPart) { |
| List<IElementType> types = new LinkedList<IElementType>(); |
| if (targetEditPart instanceof CircleEditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof RectangleEditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof RhombusEditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof Circle2EditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof Rectangle2EditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof Rhombus2EditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof PortEditPart) { |
| types.add(LinklfElementTypes.Link_4001); |
| } |
| if (targetEditPart instanceof CircleEditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| if (targetEditPart instanceof RectangleEditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| if (targetEditPart instanceof RhombusEditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| if (targetEditPart instanceof Circle2EditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| if (targetEditPart instanceof Rectangle2EditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| if (targetEditPart instanceof Rhombus2EditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| if (targetEditPart instanceof PortEditPart) { |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| } |
| return types; |
| } |
| |
| /** |
| * @generated |
| */ |
| @Override |
| public List<IElementType> getTypesForTarget(IAdaptable source, IElementType relationshipType) { |
| IGraphicalEditPart sourceEditPart = (IGraphicalEditPart) source.getAdapter(IGraphicalEditPart.class); |
| return doGetTypesForTarget((RhombusEditPart) sourceEditPart, relationshipType); |
| } |
| |
| /** |
| * @generated |
| */ |
| public List<IElementType> doGetTypesForTarget(RhombusEditPart source, IElementType relationshipType) { |
| List<IElementType> types = new ArrayList<IElementType>(); |
| if (relationshipType == LinklfElementTypes.Link_4001) { |
| types.add(LinklfElementTypes.Circle_2001); |
| types.add(LinklfElementTypes.Rectangle_2002); |
| types.add(LinklfElementTypes.Rhombus_2004); |
| types.add(LinklfElementTypes.Circle_3001); |
| types.add(LinklfElementTypes.Rectangle_3003); |
| types.add(LinklfElementTypes.Rhombus_3004); |
| types.add(LinklfElementTypes.Port_3005); |
| } else if (relationshipType == LinklfElementTypes.LabeledLink_4002) { |
| types.add(LinklfElementTypes.Circle_2001); |
| types.add(LinklfElementTypes.Rectangle_2002); |
| types.add(LinklfElementTypes.Rhombus_2004); |
| types.add(LinklfElementTypes.Circle_3001); |
| types.add(LinklfElementTypes.Rectangle_3003); |
| types.add(LinklfElementTypes.Rhombus_3004); |
| types.add(LinklfElementTypes.Port_3005); |
| } |
| return types; |
| } |
| |
| /** |
| * @generated |
| */ |
| @Override |
| public List<IElementType> getRelTypesOnTarget(IAdaptable target) { |
| IGraphicalEditPart targetEditPart = (IGraphicalEditPart) target.getAdapter(IGraphicalEditPart.class); |
| return doGetRelTypesOnTarget((RhombusEditPart) targetEditPart); |
| } |
| |
| /** |
| * @generated |
| */ |
| public List<IElementType> doGetRelTypesOnTarget(RhombusEditPart target) { |
| List<IElementType> types = new ArrayList<IElementType>(2); |
| types.add(LinklfElementTypes.Link_4001); |
| types.add(LinklfElementTypes.LabeledLink_4002); |
| return types; |
| } |
| |
| /** |
| * @generated |
| */ |
| @Override |
| public List<IElementType> getTypesForSource(IAdaptable target, IElementType relationshipType) { |
| IGraphicalEditPart targetEditPart = (IGraphicalEditPart) target.getAdapter(IGraphicalEditPart.class); |
| return doGetTypesForSource((RhombusEditPart) targetEditPart, relationshipType); |
| } |
| |
| /** |
| * @generated |
| */ |
| public List<IElementType> doGetTypesForSource(RhombusEditPart target, IElementType relationshipType) { |
| List<IElementType> types = new ArrayList<IElementType>(); |
| if (relationshipType == LinklfElementTypes.Link_4001) { |
| types.add(LinklfElementTypes.Circle_2001); |
| types.add(LinklfElementTypes.Rectangle_2002); |
| types.add(LinklfElementTypes.Rhombus_2004); |
| types.add(LinklfElementTypes.Circle_3001); |
| types.add(LinklfElementTypes.Rectangle_3003); |
| types.add(LinklfElementTypes.Rhombus_3004); |
| types.add(LinklfElementTypes.Port_3005); |
| } else if (relationshipType == LinklfElementTypes.LabeledLink_4002) { |
| types.add(LinklfElementTypes.Circle_2001); |
| types.add(LinklfElementTypes.Rectangle_2002); |
| types.add(LinklfElementTypes.Rhombus_2004); |
| types.add(LinklfElementTypes.Circle_3001); |
| types.add(LinklfElementTypes.Rectangle_3003); |
| types.add(LinklfElementTypes.Rhombus_3004); |
| types.add(LinklfElementTypes.Port_3005); |
| } |
| return types; |
| } |
| |
| } |