diff --git a/org.framed.iorm.ui/core/attributeAndOperation/AttributePattern.java b/org.framed.iorm.ui/core/attributeAndOperation/AttributePattern.java index d3ba60090b977b986f064ea67310d1a911220fab..fa84c5cbc3e7c18b4aa74c980fee1655b02e32b5 100644 --- a/org.framed.iorm.ui/core/attributeAndOperation/AttributePattern.java +++ b/org.framed.iorm.ui/core/attributeAndOperation/AttributePattern.java @@ -7,7 +7,6 @@ import org.eclipse.graphiti.mm.pictograms.Shape; import org.eclipse.graphiti.pattern.IPattern; import org.framed.iorm.model.NamedElement; import org.framed.iorm.model.OrmFactory; -import org.framed.iorm.model.Type; import org.framed.iorm.ui.UIUtil; import org.framed.iorm.ui.editPolicy.EditPolicyService; import org.framed.iorm.ui.references.AbstractHasAttsAndOpsReference; diff --git a/org.framed.iorm.ui/core/fulfillment/FulfillmentPattern.java b/org.framed.iorm.ui/core/fulfillment/FulfillmentPattern.java index 6570d4429700fdd2fd8dd08d2bf12c7ab0713e10..10a15622f5f5d55f1212bfe10872ace6db34c98a 100644 --- a/org.framed.iorm.ui/core/fulfillment/FulfillmentPattern.java +++ b/org.framed.iorm.ui/core/fulfillment/FulfillmentPattern.java @@ -233,8 +233,8 @@ public class FulfillmentPattern extends FRaMEDConnectionPattern { Anchor sourceAnchor = createContext.getSourceAnchor(); org.framed.iorm.model.ModelElement sourceShape = UIUtil.getModelElementForAnchor(sourceAnchor); if (sourceShape != null) { - if(sourceTypes.contains(sourceShape.getType())) - return EditPolicyService.getHandler(this.getDiagram()).canStart(createContext, Type.FULFILLMENT); + // if(sourceTypes.contains(sourceShape.getType())) + return EditPolicyService.getHandler(this.getDiagram()).canStart(createContext, Type.FULFILLMENT); } return false; } diff --git a/org.framed.iorm.ui/core/model/ModelPattern.java b/org.framed.iorm.ui/core/model/ModelPattern.java index 86dd0edb8e6dbb0b17e5b11b03d71d1cebfc86ed..7bf08395ebeb9840fe999a6025a94e7897583971 100644 --- a/org.framed.iorm.ui/core/model/ModelPattern.java +++ b/org.framed.iorm.ui/core/model/ModelPattern.java @@ -101,8 +101,8 @@ public class ModelPattern extends FRaMEDShapePattern implements IPattern { public boolean canAdd(IAddContext addContext) { if(addContext.getNewObject() instanceof Model && ((Model)addContext.getNewObject()).getParent() != null) { Type type = ((Model) addContext.getNewObject()).getParent().getType(); - return (UIUtil.getLinkedModelForDiagram(getDiagram()) == null); - //&& EditPolicyService.getHandler(this.getDiagram()).canAdd(addContext, type); + return (UIUtil.getLinkedModelForDiagram(getDiagram()) == null) + && EditPolicyService.getHandler(this.getDiagram()).canAdd(addContext, type); } return false; } diff --git a/org.framed.iorm.ui/core/standardPolicies.editpolicy b/org.framed.iorm.ui/core/standardPolicies.editpolicy index 7c442c12974f481083afa0e30437071cfba399e7..eef06cef66c6ff49bb6abfe1289aae5895cba16f 100644 --- a/org.framed.iorm.ui/core/standardPolicies.editpolicy +++ b/org.framed.iorm.ui/core/standardPolicies.editpolicy @@ -221,7 +221,11 @@ </policies> <policies action="Start" actionType="Fulfillment"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> - <constraintRule xsi:type="Editpolicymodel:TrueConstraintRule"/> + <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="NaturalType"/> + </policies> + <policies action="Start" actionType="Fulfillment"> + <featureRule xsi:type="Editpolicymodel:IsFeature" featureName="Dates"/> + <constraintRule xsi:type="Editpolicymodel:IsSourceType" type="DataType"/> </policies> <policies action="Start" actionType="Relationship"> <featureRule xsi:type="Editpolicymodel:TrueFeatureRule"/> diff --git a/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java b/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java index 1a1997cf830c2965bfeb8baf2abf10bd4e889d80..d767d6ba44a36488fc8873e4d1a192fdc267b3ed 100644 --- a/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java +++ b/org.framed.iorm.ui/src/org/framed/iorm/ui/editPolicy/ConstraintRuleVisitor.java @@ -2,12 +2,10 @@ package org.framed.iorm.ui.editPolicy; import org.eclipse.graphiti.features.context.impl.AddConnectionContext; import org.eclipse.graphiti.mm.pictograms.Anchor; -import org.eclipse.graphiti.mm.pictograms.ContainerShape; import org.eclipse.graphiti.mm.pictograms.Diagram; import org.eclipse.graphiti.mm.pictograms.Shape; import org.framed.iorm.model.ModelElement; import org.framed.iorm.model.Type; -import org.framed.iorm.ui.UILiterals; import org.framed.iorm.ui.UIUtil; import org.framed.iorm.ui.exceptions.NoDiagramFoundException; @@ -43,6 +41,7 @@ public class ConstraintRuleVisitor { */ private boolean isStepOut; + @SuppressWarnings("unused") private Type type; private Diagram diagram; @@ -200,7 +199,6 @@ public class ConstraintRuleVisitor { return false; } - private boolean orRuleVisitor(OrConstraintRule rule) { for(ConstraintRule abstractRule : rule.getRules()) {