Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'uml/org.eclipse.papyrus.diagram.clazz/src/org/eclipse/papyrus/diagram/clazz/edit/policies/ModelPackageableElementCompartment2CanonicalEditPolicy.java')
-rw-r--r--uml/org.eclipse.papyrus.diagram.clazz/src/org/eclipse/papyrus/diagram/clazz/edit/policies/ModelPackageableElementCompartment2CanonicalEditPolicy.java108
1 files changed, 108 insertions, 0 deletions
diff --git a/uml/org.eclipse.papyrus.diagram.clazz/src/org/eclipse/papyrus/diagram/clazz/edit/policies/ModelPackageableElementCompartment2CanonicalEditPolicy.java b/uml/org.eclipse.papyrus.diagram.clazz/src/org/eclipse/papyrus/diagram/clazz/edit/policies/ModelPackageableElementCompartment2CanonicalEditPolicy.java
new file mode 100644
index 00000000000..b50894e605c
--- /dev/null
+++ b/uml/org.eclipse.papyrus.diagram.clazz/src/org/eclipse/papyrus/diagram/clazz/edit/policies/ModelPackageableElementCompartment2CanonicalEditPolicy.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * Copyright (c) 2008 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) Patrick.tessier@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.diagram.clazz.edit.policies;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.gmf.runtime.diagram.ui.editpolicies.CanonicalEditPolicy;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Class4EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Comment2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Component2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Constraint2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.DataType2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Enumeration2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.InstanceSpecification2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Interface2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Model3EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Package2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.PrimitiveType2EditPart;
+import org.eclipse.papyrus.diagram.clazz.edit.parts.Signal2EditPart;
+import org.eclipse.papyrus.diagram.clazz.part.UMLDiagramUpdater;
+import org.eclipse.papyrus.diagram.clazz.part.UMLNodeDescriptor;
+import org.eclipse.papyrus.diagram.clazz.part.UMLVisualIDRegistry;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * @generated
+ */
+public class ModelPackageableElementCompartment2CanonicalEditPolicy extends CanonicalEditPolicy {
+
+ /**
+ * @generated
+ */
+ Set myFeaturesToSynchronize;
+
+ /**
+ * @generated
+ */
+ protected List getSemanticChildrenList() {
+ View viewObject = (View) getHost().getModel();
+ List result = new LinkedList();
+ for (Iterator it = UMLDiagramUpdater.getModelPackageableElementCompartment_7030SemanticChildren(viewObject).iterator(); it.hasNext();) {
+ result.add(((UMLNodeDescriptor) it.next()).getModelElement());
+ }
+ return result;
+ }
+
+ /**
+ * @generated
+ */
+ protected boolean isOrphaned(Collection semanticChildren, final View view) {
+ int visualID = UMLVisualIDRegistry.getVisualID(view);
+ switch (visualID) {
+ case InstanceSpecification2EditPart.VISUAL_ID:
+ case Component2EditPart.VISUAL_ID:
+ case Signal2EditPart.VISUAL_ID:
+ case Interface2EditPart.VISUAL_ID:
+ case Model3EditPart.VISUAL_ID:
+ case Enumeration2EditPart.VISUAL_ID:
+ case Package2EditPart.VISUAL_ID:
+ case Class4EditPart.VISUAL_ID:
+ case PrimitiveType2EditPart.VISUAL_ID:
+ case DataType2EditPart.VISUAL_ID:
+ case Comment2EditPart.VISUAL_ID:
+ case Constraint2EditPart.VISUAL_ID:
+ if (!semanticChildren.contains(view.getElement())) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * @generated
+ */
+ protected String getDefaultFactoryHint() {
+ return null;
+ }
+
+ /**
+ * @generated
+ */
+ protected Set getFeaturesToSynchronize() {
+ if (myFeaturesToSynchronize == null) {
+ myFeaturesToSynchronize = new HashSet();
+ myFeaturesToSynchronize.add(UMLPackage.eINSTANCE.getPackage_PackagedElement());
+ myFeaturesToSynchronize.add(UMLPackage.eINSTANCE.getElement_OwnedComment());
+ }
+ return myFeaturesToSynchronize;
+ }
+
+}

Back to the top