Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcletavernie2011-10-25 12:14:18 +0000
committercletavernie2011-10-25 12:14:18 +0000
commit4162955ee01a3ef49015ee273e78556827c2b42c (patch)
treebba393fb35d9bbd8ec40bd48848a420f00481b03 /plugins/views/properties
parenteaf4d7c27f31095e986fdb19cf9c82651b0a4f69 (diff)
downloadorg.eclipse.papyrus-4162955ee01a3ef49015ee273e78556827c2b42c.tar.gz
org.eclipse.papyrus-4162955ee01a3ef49015ee273e78556827c2b42c.tar.xz
org.eclipse.papyrus-4162955ee01a3ef49015ee273e78556827c2b42c.zip
359057: [Architecture - SVN - Build] The Papyrus architecture should be refactored
https://bugs.eclipse.org/bugs/show_bug.cgi?id=359057
Diffstat (limited to 'plugins/views/properties')
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/.classpath7
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/.project28
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/META-INF/MANIFEST.MF21
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.ecore255
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.genmodel205
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/about.html28
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/build.properties15
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.properties8
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.xml34
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/properties-model.pdoc4
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/CompositeConstraint.java49
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConfigProperty.java59
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConstraintDescriptor.java137
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Context.java132
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsFactory.java159
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsPackage.java2285
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextElement.java126
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextPackage.java51
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextRoot.java86
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DisplayUnit.java53
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Property.java202
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ReferenceProperty.java59
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Section.java142
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/SimpleConstraint.java78
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Tab.java235
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/UnknownProperty.java26
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ValueProperty.java58
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/View.java177
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/CompositeConstraintImpl.java159
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConfigPropertyImpl.java172
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConstraintDescriptorImpl.java373
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextImpl.java357
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsFactoryImpl.java236
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsPackageImpl.java1043
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextElementImpl.java387
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextPackageImpl.java174
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextRootImpl.java234
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DisplayUnitImpl.java176
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/PropertyImpl.java521
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ReferencePropertyImpl.java165
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SectionImpl.java388
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SimpleConstraintImpl.java224
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/TabImpl.java625
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/UnknownPropertyImpl.java48
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ValuePropertyImpl.java171
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ViewImpl.java456
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsAdapterFactory.java418
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsSwitch.java463
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/CompositeWidgetType.java26
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ConstraintType.java86
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ContentProviderType.java27
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Environment.java173
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentFactory.java123
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentPackage.java1275
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/LayoutType.java28
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/MiscClass.java113
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ModelElementFactoryDescriptor.java86
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Namespace.java113
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/PropertyEditorType.java89
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/StandardWidgetType.java26
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Type.java298
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/WidgetType.java113
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/CompositeWidgetTypeImpl.java48
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/ConstraintTypeImpl.java263
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentFactoryImpl.java243
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentImpl.java424
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentPackageImpl.java676
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/LayoutTypeImpl.java53
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/MiscClassImpl.java288
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/ModelElementFactoryDescriptorImpl.java226
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/NamespaceImpl.java280
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/PropertyEditorTypeImpl.java226
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/StandardWidgetTypeImpl.java48
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/WidgetTypeImpl.java288
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/util/EnvironmentAdapterFactory.java310
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/util/EnvironmentSwitch.java331
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/CompositeWidget.java105
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/Element.java27
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/Layout.java59
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/PropertyEditor.java226
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/ReferenceAttribute.java58
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/StandardWidget.java59
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/UIComponent.java49
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/UiFactory.java114
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/UiPackage.java1069
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/UnknownComponent.java58
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/ValueAttribute.java58
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/Widget.java26
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/WidgetAttribute.java58
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/CompositeWidgetImpl.java291
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/ElementImpl.java50
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/LayoutImpl.java166
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/PropertyEditorImpl.java538
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/ReferenceAttributeImpl.java184
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/StandardWidgetImpl.java166
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/UIComponentImpl.java159
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/UiFactoryImpl.java181
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/UiPackageImpl.java607
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/UnknownComponentImpl.java171
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/ValueAttributeImpl.java171
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/WidgetAttributeImpl.java171
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/impl/WidgetImpl.java48
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/util/UiAdapterFactory.java309
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/ui/util/UiSwitch.java353
104 files changed, 23320 insertions, 0 deletions
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/.classpath b/plugins/views/properties/org.eclipse.papyrus.properties.model/.classpath
new file mode 100644
index 00000000000..cedf0d0d0b5
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src-gen"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/.project b/plugins/views/properties/org.eclipse.papyrus.properties.model/.project
new file mode 100644
index 00000000000..62138ff608c
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.properties.model</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/META-INF/MANIFEST.MF b/plugins/views/properties/org.eclipse.papyrus.properties.model/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..3656fa59fc2
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.properties.model;singleton:=true
+Bundle-Version: 0.9.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.papyrus.properties.contexts,
+ org.eclipse.papyrus.properties.contexts.impl,
+ org.eclipse.papyrus.properties.contexts.util,
+ org.eclipse.papyrus.properties.environment,
+ org.eclipse.papyrus.properties.environment.impl,
+ org.eclipse.papyrus.properties.environment.util,
+ org.eclipse.papyrus.properties.ui,
+ org.eclipse.papyrus.properties.ui.impl,
+ org.eclipse.papyrus.properties.ui.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.ecore b/plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.ecore
new file mode 100644
index 00000000000..05690f83d82
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.ecore
@@ -0,0 +1,255 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="properties"
+ nsURI="http://www.eclipse.org/papyrus/properties" nsPrefix="properties">
+ <eSubpackages name="environment" nsURI="http://www.eclipse.org/papyrus/properties/environment"
+ nsPrefix="environment">
+ <eClassifiers xsi:type="ecore:EClass" name="Environment" eSuperTypes="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EModelElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="modelElementFactories"
+ upperBound="-1" eType="#//environment/ModelElementFactoryDescriptor" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="constraintTypes" upperBound="-1"
+ eType="#//environment/ConstraintType" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="widgetTypes" upperBound="-1"
+ eType="#//environment/StandardWidgetType" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="propertyEditorTypes"
+ upperBound="-1" eType="#//environment/PropertyEditorType" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="compositeWidgetTypes"
+ upperBound="-1" eType="#//environment/CompositeWidgetType" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="layoutTypes" upperBound="-1"
+ eType="#//environment/LayoutType" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="namespaces" upperBound="-1"
+ eType="#//environment/Namespace" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="miscClasses" upperBound="-1"
+ eType="#//environment/MiscClass" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="PropertyEditorType" eSuperTypes="#//environment/WidgetType">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1"
+ eType="#//environment/Type"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="1"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="WidgetType" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="widgetClass" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="namespace" eType="#//environment/Namespace"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CompositeWidgetType" eSuperTypes="#//environment/WidgetType"/>
+ <eClassifiers xsi:type="ecore:EClass" name="LayoutType" eSuperTypes="#//environment/WidgetType"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ConstraintType">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="constraintClass" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ModelElementFactoryDescriptor">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="factoryClass" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="Type">
+ <eLiterals name="String"/>
+ <eLiterals name="Boolean" value="1"/>
+ <eLiterals name="Integer" value="2"/>
+ <eLiterals name="Reference" value="3" literal="Reference"/>
+ <eLiterals name="Enumeration" value="4"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StandardWidgetType" eSuperTypes="#//environment/WidgetType"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Namespace">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MiscClass">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="class" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="namespace" eType="#//environment/Namespace"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="contexts" nsURI="http://www.eclipse.org/papyrus/properties/contexts"
+ nsPrefix="contexts">
+ <eClassifiers xsi:type="ecore:EClass" name="Context" eSuperTypes="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EModelElement">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="dependencies" ordered="false"
+ upperBound="-1" eType="#//contexts/Context"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="tabs" upperBound="-1"
+ eType="#//contexts/Tab" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="views" upperBound="-1"
+ eType="#//contexts/View" containment="true" eOpposite="#//contexts/View/context"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="dataContexts" upperBound="-1"
+ eType="#//contexts/DataContextRoot" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DisplayUnit" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1"
+ eType="#//contexts/ConstraintDescriptor" containment="true" eOpposite="#//contexts/ConstraintDescriptor/display"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Tab">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="image" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="afterTab" eType="#//contexts/Tab"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="sections" upperBound="-1"
+ eType="#//contexts/Section" containment="true" eOpposite="#//contexts/Section/tab"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="indented" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="false"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="priority" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="View" eSuperTypes="#//contexts/DisplayUnit">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="sections" upperBound="-1"
+ eType="#//contexts/Section"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementMultiplicity"
+ lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
+ defaultValueLiteral="1"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="context" lowerBound="1"
+ eType="#//contexts/Context" eOpposite="#//contexts/Context/views"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="automaticContext" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="datacontexts" upperBound="-1"
+ eType="#//contexts/DataContextElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Section" eSuperTypes="#//contexts/DisplayUnit">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="tab" lowerBound="1" eType="#//contexts/Tab"
+ eOpposite="#//contexts/Tab/sections"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="sectionFile" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="widget" lowerBound="1"
+ eType="#//ui/CompositeWidget"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DataContextElement">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
+ eType="#//contexts/Property" containment="true" eOpposite="#//contexts/Property/contextElement"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="package" eType="#//contexts/DataContextPackage"
+ eOpposite="#//contexts/DataContextPackage/elements"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="supertypes" upperBound="-1"
+ eType="#//contexts/DataContextElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Property">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1"
+ eType="#//environment/Type"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="contextElement" eType="#//contexts/DataContextElement"
+ eOpposite="#//contexts/DataContextElement/properties"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="multiplicity" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="1"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UnknownProperty" eSuperTypes="#//contexts/Property"/>
+ <eClassifiers xsi:type="ecore:EClass" name="DataContextPackage" eSuperTypes="#//contexts/DataContextElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1"
+ eType="#//contexts/DataContextElement" containment="true" eOpposite="#//contexts/DataContextElement/package"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DataContextRoot" eSuperTypes="#//contexts/DataContextPackage">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="modelElementFactory"
+ lowerBound="1" eType="#//environment/ModelElementFactoryDescriptor"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ConstraintDescriptor" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="display" eType="#//contexts/DisplayUnit"
+ eOpposite="#//contexts/DisplayUnit/constraints"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="overrideable" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="overriddenConstraints"
+ upperBound="-1" eType="#//contexts/SimpleConstraint"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SimpleConstraint" eSuperTypes="#//contexts/ConstraintDescriptor">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="constraintType" lowerBound="1"
+ eType="#//environment/ConstraintType"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
+ eType="#//contexts/ConfigProperty" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CompositeConstraint" eSuperTypes="#//contexts/ConstraintDescriptor">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1"
+ eType="#//contexts/SimpleConstraint" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ConfigProperty" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ValueProperty" eSuperTypes="#//contexts/ConfigProperty">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ReferenceProperty" eSuperTypes="#//contexts/ConfigProperty">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="ui" nsURI="http://www.eclipse.org/papyrus/properties/ui" nsPrefix="ui">
+ <eClassifiers xsi:type="ecore:EClass" name="Element"/>
+ <eClassifiers xsi:type="ecore:EClass" name="UIComponent" abstract="true" eSuperTypes="#//ui/Element">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
+ eType="#//ui/WidgetAttribute" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Widget" abstract="true" eSuperTypes="#//ui/UIComponent"/>
+ <eClassifiers xsi:type="ecore:EClass" name="StandardWidget" eSuperTypes="#//ui/Widget">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="widgetType" lowerBound="1"
+ eType="#//environment/StandardWidgetType"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="PropertyEditor" eSuperTypes="#//ui/Widget">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="property" lowerBound="1"
+ eType="#//contexts/Property"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="readOnly" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="false"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="widgetType" lowerBound="1"
+ eType="#//environment/PropertyEditorType"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="unresolvedProperty" eType="#//contexts/UnknownProperty"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="contentProviderClass"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showLabel" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="customLabel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CompositeWidget" eSuperTypes="#//ui/Widget">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="layout" lowerBound="1"
+ eType="#//ui/Layout" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="widgets" upperBound="-1"
+ eType="#//ui/Widget" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="widgetType" lowerBound="1"
+ eType="#//environment/CompositeWidgetType"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UnknownComponent" eSuperTypes="#//ui/Widget">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="typeName" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Layout" eSuperTypes="#//ui/UIComponent">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="layoutType" lowerBound="1"
+ eType="#//environment/LayoutType"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="WidgetAttribute" abstract="true" eSuperTypes="#//ui/Element">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ValueAttribute" eSuperTypes="#//ui/WidgetAttribute">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ReferenceAttribute" eSuperTypes="#//ui/WidgetAttribute">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1"
+ eType="#//ui/UIComponent" containment="true"/>
+ </eClassifiers>
+ </eSubpackages>
+</ecore:EPackage>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.genmodel b/plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.genmodel
new file mode 100644
index 00000000000..93e2bbf57b0
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/Model/Properties.genmodel
@@ -0,0 +1,205 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.papyrus.properties.model/src-gen"
+ editDirectory="/org.eclipse.papyrus.properties.model.edit/src-gen" editorDirectory="/org.eclipse.papyrus.properties.model.editor/src-gen"
+ modelPluginID="org.eclipse.papyrus.properties.model" modelName="Properties" testsDirectory="/org.eclipse.papyrus.properties.model.tests/src-gen"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+ usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
+ <foreignModel>Properties.ecore</foreignModel>
+ <genPackages prefix="Properties" basePackage="org.eclipse.papyrus" disposableProviderFactory="true"
+ ecorePackage="Properties.ecore#/">
+ <nestedGenPackages prefix="Environment" basePackage="org.eclipse.papyrus.properties"
+ disposableProviderFactory="true" ecorePackage="Properties.ecore#//environment">
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="Properties.ecore#//environment/Type">
+ <genEnumLiterals ecoreEnumLiteral="Properties.ecore#//environment/Type/String"/>
+ <genEnumLiterals ecoreEnumLiteral="Properties.ecore#//environment/Type/Boolean"/>
+ <genEnumLiterals ecoreEnumLiteral="Properties.ecore#//environment/Type/Integer"/>
+ <genEnumLiterals ecoreEnumLiteral="Properties.ecore#//environment/Type/Reference"/>
+ <genEnumLiterals ecoreEnumLiteral="Properties.ecore#//environment/Type/Enumeration"/>
+ </genEnums>
+ <genClasses ecoreClass="Properties.ecore#//environment/Environment">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/modelElementFactories"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/constraintTypes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/widgetTypes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/propertyEditorTypes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/compositeWidgetTypes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/layoutTypes"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/namespaces"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//environment/Environment/miscClasses"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//environment/PropertyEditorType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/PropertyEditorType/type"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/PropertyEditorType/multiplicity"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="Properties.ecore#//environment/WidgetType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/WidgetType/label"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/WidgetType/widgetClass"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//environment/WidgetType/namespace"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//environment/CompositeWidgetType"/>
+ <genClasses ecoreClass="Properties.ecore#//environment/LayoutType"/>
+ <genClasses ecoreClass="Properties.ecore#//environment/ConstraintType">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/ConstraintType/label"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/ConstraintType/constraintClass"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//environment/ModelElementFactoryDescriptor">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/ModelElementFactoryDescriptor/name"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/ModelElementFactoryDescriptor/factoryClass"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//environment/StandardWidgetType"/>
+ <genClasses ecoreClass="Properties.ecore#//environment/Namespace">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/Namespace/prefix"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/Namespace/name"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/Namespace/value"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//environment/MiscClass">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/MiscClass/label"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//environment/MiscClass/class"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//environment/MiscClass/namespace"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages prefix="Contexts" basePackage="org.eclipse.papyrus.properties"
+ disposableProviderFactory="true" ecorePackage="Properties.ecore#//contexts">
+ <genClasses ecoreClass="Properties.ecore#//contexts/Context">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Context/name"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/Context/dependencies"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/Context/tabs"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/Context/views"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/Context/dataContexts"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Context/author"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Context/description"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Context/version"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="Properties.ecore#//contexts/DisplayUnit">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/DisplayUnit/constraints"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/Tab">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Tab/label"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Tab/id"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Tab/category"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Tab/image"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/Tab/afterTab"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/Tab/sections"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Tab/indented"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Tab/priority"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/View">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/View/name"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/View/sections"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/View/elementMultiplicity"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference Properties.ecore#//contexts/View/context"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/View/automaticContext"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/View/datacontexts"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/Section">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Section/name"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference Properties.ecore#//contexts/Section/tab"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Section/sectionFile"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/Section/widget"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/DataContextElement">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/DataContextElement/name"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/DataContextElement/properties"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference Properties.ecore#//contexts/DataContextElement/package"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/DataContextElement/supertypes"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/Property">
+ <genFeatures createChild="false" propertyCategory="" propertyDescription=""
+ ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Property/name"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Property/label"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Property/type"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference Properties.ecore#//contexts/Property/contextElement"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Property/multiplicity"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/Property/description"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/UnknownProperty"/>
+ <genClasses ecoreClass="Properties.ecore#//contexts/DataContextPackage">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/DataContextPackage/elements"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/DataContextRoot">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/DataContextRoot/label"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/DataContextRoot/modelElementFactory"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/ConstraintDescriptor">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/ConstraintDescriptor/name"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference Properties.ecore#//contexts/ConstraintDescriptor/display"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/ConstraintDescriptor/overrideable"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/ConstraintDescriptor/overriddenConstraints"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/SimpleConstraint">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/SimpleConstraint/constraintType"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/SimpleConstraint/properties"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/CompositeConstraint">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//contexts/CompositeConstraint/constraints"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="Properties.ecore#//contexts/ConfigProperty">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/ConfigProperty/name"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/ValueProperty">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//contexts/ValueProperty/value"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//contexts/ReferenceProperty">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//contexts/ReferenceProperty/value"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages prefix="Ui" basePackage="org.eclipse.papyrus.properties" disposableProviderFactory="true"
+ ecorePackage="Properties.ecore#//ui">
+ <genClasses ecoreClass="Properties.ecore#//ui/Element"/>
+ <genClasses image="false" ecoreClass="Properties.ecore#//ui/UIComponent">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//ui/UIComponent/attributes"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="Properties.ecore#//ui/Widget"/>
+ <genClasses ecoreClass="Properties.ecore#//ui/StandardWidget">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//ui/StandardWidget/widgetType"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//ui/PropertyEditor">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//ui/PropertyEditor/property"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/PropertyEditor/readOnly"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//ui/PropertyEditor/widgetType"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//ui/PropertyEditor/unresolvedProperty"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/PropertyEditor/contentProviderClass"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/PropertyEditor/showLabel"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/PropertyEditor/customLabel"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//ui/CompositeWidget">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//ui/CompositeWidget/layout"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//ui/CompositeWidget/widgets"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//ui/CompositeWidget/widgetType"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//ui/UnknownComponent">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/UnknownComponent/typeName"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//ui/Layout">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference Properties.ecore#//ui/Layout/layoutType"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="Properties.ecore#//ui/WidgetAttribute">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/WidgetAttribute/name"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//ui/ValueAttribute">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute Properties.ecore#//ui/ValueAttribute/value"/>
+ </genClasses>
+ <genClasses ecoreClass="Properties.ecore#//ui/ReferenceAttribute">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference Properties.ecore#//ui/ReferenceAttribute/value"/>
+ </genClasses>
+ </nestedGenPackages>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/about.html b/plugins/views/properties/org.eclipse.papyrus.properties.model/about.html
new file mode 100644
index 00000000000..82d49bf5f81
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 5, 2007</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/build.properties b/plugins/views/properties/org.eclipse.papyrus.properties.model/build.properties
new file mode 100644
index 00000000000..eb13c98db2a
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/build.properties
@@ -0,0 +1,15 @@
+#
+#Mon Sep 12 09:30:04 CEST 2011
+output..=bin/
+bin.includes=.,META-INF/,plugin.xml,plugin.properties,Model/,about.html
+jars.compile.order=.
+src.includes = .,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ Model/,\
+ about.html,\
+ properties-model.pdoc
+src-gen.includes=Model/,META-INF/,plugin.xml,plugin.properties
+source..=src-gen/
+bin..=bin/
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.properties b/plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.properties
new file mode 100644
index 00000000000..29f406a4a95
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.properties
@@ -0,0 +1,8 @@
+
+# <copyright>
+# </copyright>
+#
+# $Id$
+
+pluginName = Papyrus properties model (Incubation)
+providerName = Eclipse Modeling Project
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.xml b/plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.xml
new file mode 100644
index 00000000000..c08382c2b05
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/plugin.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ <copyright>
+ </copyright>
+
+ $Id$
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/properties/environment"
+ class="org.eclipse.papyrus.properties.environment.EnvironmentPackage"
+ genModel="Model/Properties.genmodel"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/properties/contexts"
+ class="org.eclipse.papyrus.properties.contexts.ContextsPackage"
+ genModel="Model/Properties.genmodel"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/properties/ui"
+ class="org.eclipse.papyrus.properties.ui.UiPackage"
+ genModel="Model/Properties.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/properties-model.pdoc b/plugins/views/properties/org.eclipse.papyrus.properties.model/properties-model.pdoc
new file mode 100644
index 00000000000..384d0e2ada3
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/properties-model.pdoc
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<doc:Documentation xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:doc="http://www.eclipse.org/papyrus/documentation/plugin/documentation" description="An EMF Model for defining a Property view configuration.&#xD;&#xA;&#xD;&#xA;It contains three packages: &#xD;&#xA;&#xD;&#xA;- The Environment packages describes the tools available for defining a property view: Widgets, Data manipulation, ...&#xD;&#xA;- The Context package describing the behavior for a property view: Data manipulation, conditions under which a view is displayed, ...&#xD;&#xA;- The UI package describes a single view, graphically: widgets, hierarchy, layout">
+ <referent firstName="Camille" lastName="Letavernier" eMail="camille.letavernier@cea.fr" currentCompany="CEA LIST"/>
+</doc:Documentation>
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/CompositeConstraint.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/CompositeConstraint.java
new file mode 100644
index 00000000000..989cd566b01
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/CompositeConstraint.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Composite Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.CompositeConstraint#getConstraints <em>Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getCompositeConstraint()
+ * @model
+ * @generated
+ */
+public interface CompositeConstraint extends ConstraintDescriptor {
+
+ /**
+ * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.SimpleConstraint}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraints</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Constraints</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getCompositeConstraint_Constraints()
+ * @model containment="true"
+ * @generated
+ */
+ EList<SimpleConstraint> getConstraints();
+
+} // CompositeConstraint
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConfigProperty.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConfigProperty.java
new file mode 100644
index 00000000000..0b60fac52fa
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConfigProperty.java
@@ -0,0 +1,59 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Config Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ConfigProperty#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConfigProperty()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ConfigProperty extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConfigProperty_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.ConfigProperty#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // ConfigProperty
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConstraintDescriptor.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConstraintDescriptor.java
new file mode 100644
index 00000000000..2e38e4ce1e2
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ConstraintDescriptor.java
@@ -0,0 +1,137 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.properties.environment.ConstraintType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getDisplay <em>Display</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#isOverrideable <em>Overrideable</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getOverriddenConstraints <em>Overridden Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConstraintDescriptor()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ConstraintDescriptor extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConstraintDescriptor_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Display</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.DisplayUnit#getConstraints <em>Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Display</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Display</em>' container reference.
+ * @see #setDisplay(DisplayUnit)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConstraintDescriptor_Display()
+ * @see org.eclipse.papyrus.properties.contexts.DisplayUnit#getConstraints
+ * @model opposite="constraints" transient="false"
+ * @generated
+ */
+ DisplayUnit getDisplay();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getDisplay <em>Display</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Display</em>' container reference.
+ * @see #getDisplay()
+ * @generated
+ */
+ void setDisplay(DisplayUnit value);
+
+ /**
+ * Returns the value of the '<em><b>Overridden Constraints</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.SimpleConstraint}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Overridden Constraints</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Overridden Constraints</em>' reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConstraintDescriptor_OverriddenConstraints()
+ * @model
+ * @generated
+ */
+ EList<SimpleConstraint> getOverriddenConstraints();
+
+ /**
+ * Returns the value of the '<em><b>Overrideable</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Overrideable</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Overrideable</em>' attribute.
+ * @see #setOverrideable(boolean)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getConstraintDescriptor_Overrideable()
+ * @model default="true" required="true"
+ * @generated
+ */
+ boolean isOverrideable();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#isOverrideable <em>Overrideable</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Overrideable</em>' attribute.
+ * @see #isOverrideable()
+ * @generated
+ */
+ void setOverrideable(boolean value);
+
+} // ConstraintDescriptor
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Context.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Context.java
new file mode 100644
index 00000000000..e0f4f2ae2d5
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Context.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Context</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Context#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Context#getDependencies <em>Dependencies</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Context#getTabs <em>Tabs</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Context#getViews <em>Views</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Context#getDataContexts <em>Data Contexts</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getContext()
+ * @model
+ * @generated
+ */
+public interface Context extends EModelElement {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getContext_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Context#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Views</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.View}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.View#getContext <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Views</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Views</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getContext_Views()
+ * @see org.eclipse.papyrus.properties.contexts.View#getContext
+ * @model opposite="context" containment="true"
+ * @generated
+ */
+ EList<View> getViews();
+
+ /**
+ * Returns the value of the '<em><b>Tabs</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.Tab}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Tabs</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Tabs</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getContext_Tabs()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Tab> getTabs();
+
+ /**
+ * Returns the value of the '<em><b>Data Contexts</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.DataContextRoot}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Data Contexts</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Data Contexts</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getContext_DataContexts()
+ * @model containment="true"
+ * @generated
+ */
+ EList<DataContextRoot> getDataContexts();
+
+ /**
+ * Returns the value of the '<em><b>Dependencies</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.Context}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Dependencies</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Dependencies</em>' reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getContext_Dependencies()
+ * @model ordered="false"
+ * @generated
+ */
+ EList<Context> getDependencies();
+
+} // Context
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsFactory.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsFactory.java
new file mode 100644
index 00000000000..dcca12efd7f
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsFactory.java
@@ -0,0 +1,159 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage
+ * @generated
+ */
+public interface ContextsFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ContextsFactory eINSTANCE = org.eclipse.papyrus.properties.contexts.impl.ContextsFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Context</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Context</em>'.
+ * @generated
+ */
+ Context createContext();
+
+ /**
+ * Returns a new object of class '<em>View</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>View</em>'.
+ * @generated
+ */
+ View createView();
+
+ /**
+ * Returns a new object of class '<em>Tab</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Tab</em>'.
+ * @generated
+ */
+ Tab createTab();
+
+ /**
+ * Returns a new object of class '<em>Section</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Section</em>'.
+ * @generated
+ */
+ Section createSection();
+
+ /**
+ * Returns a new object of class '<em>Data Context Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Data Context Element</em>'.
+ * @generated
+ */
+ DataContextElement createDataContextElement();
+
+ /**
+ * Returns a new object of class '<em>Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Property</em>'.
+ * @generated
+ */
+ Property createProperty();
+
+ /**
+ * Returns a new object of class '<em>Unknown Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Unknown Property</em>'.
+ * @generated
+ */
+ UnknownProperty createUnknownProperty();
+
+ /**
+ * Returns a new object of class '<em>Data Context Package</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Data Context Package</em>'.
+ * @generated
+ */
+ DataContextPackage createDataContextPackage();
+
+ /**
+ * Returns a new object of class '<em>Data Context Root</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Data Context Root</em>'.
+ * @generated
+ */
+ DataContextRoot createDataContextRoot();
+
+ /**
+ * Returns a new object of class '<em>Simple Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Simple Constraint</em>'.
+ * @generated
+ */
+ SimpleConstraint createSimpleConstraint();
+
+ /**
+ * Returns a new object of class '<em>Composite Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Composite Constraint</em>'.
+ * @generated
+ */
+ CompositeConstraint createCompositeConstraint();
+
+ /**
+ * Returns a new object of class '<em>Value Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Value Property</em>'.
+ * @generated
+ */
+ ValueProperty createValueProperty();
+
+ /**
+ * Returns a new object of class '<em>Reference Property</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Reference Property</em>'.
+ * @generated
+ */
+ ReferenceProperty createReferenceProperty();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ContextsPackage getContextsPackage();
+
+} //ContextsFactory
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsPackage.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsPackage.java
new file mode 100644
index 00000000000..0ff39ab2dd1
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ContextsPackage.java
@@ -0,0 +1,2285 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.ContextsFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ContextsPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "contexts";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/properties/contexts";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "contexts";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ContextsPackage eINSTANCE = org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl <em>Context</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getContext()
+ * @generated
+ */
+ int CONTEXT = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT__EANNOTATIONS = EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT__NAME = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Dependencies</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT__DEPENDENCIES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Tabs</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT__TABS = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Views</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT__VIEWS = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Data Contexts</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT__DATA_CONTEXTS = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+ /**
+ * The number of structural features of the '<em>Context</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONTEXT_FEATURE_COUNT = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.DisplayUnitImpl <em>Display Unit</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DisplayUnitImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDisplayUnit()
+ * @generated
+ */
+ int DISPLAY_UNIT = 1;
+
+ /**
+ * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISPLAY_UNIT__CONSTRAINTS = 0;
+
+ /**
+ * The number of structural features of the '<em>Display Unit</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DISPLAY_UNIT_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl <em>View</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ViewImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getView()
+ * @generated
+ */
+ int VIEW = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl <em>Tab</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.TabImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getTab()
+ * @generated
+ */
+ int TAB = 2;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__LABEL = 0;
+
+ /**
+ * The feature id for the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__ID = 1;
+
+ /**
+ * The feature id for the '<em><b>Category</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__CATEGORY = 2;
+
+ /**
+ * The feature id for the '<em><b>Image</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__IMAGE = 3;
+
+ /**
+ * The feature id for the '<em><b>After Tab</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__AFTER_TAB = 4;
+
+ /**
+ * The feature id for the '<em><b>Sections</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__SECTIONS = 5;
+
+ /**
+ * The feature id for the '<em><b>Indented</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__INDENTED = 6;
+
+ /**
+ * The feature id for the '<em><b>Priority</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB__PRIORITY = 7;
+
+ /**
+ * The number of structural features of the '<em>Tab</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TAB_FEATURE_COUNT = 8;
+
+ /**
+ * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__CONSTRAINTS = DISPLAY_UNIT__CONSTRAINTS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__NAME = DISPLAY_UNIT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Sections</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__SECTIONS = DISPLAY_UNIT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Element Multiplicity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__ELEMENT_MULTIPLICITY = DISPLAY_UNIT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Context</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__CONTEXT = DISPLAY_UNIT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Automatic Context</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__AUTOMATIC_CONTEXT = DISPLAY_UNIT_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Datacontexts</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW__DATACONTEXTS = DISPLAY_UNIT_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>View</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VIEW_FEATURE_COUNT = DISPLAY_UNIT_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.SectionImpl <em>Section</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.SectionImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getSection()
+ * @generated
+ */
+ int SECTION = 4;
+
+ /**
+ * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECTION__CONSTRAINTS = DISPLAY_UNIT__CONSTRAINTS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECTION__NAME = DISPLAY_UNIT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Tab</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECTION__TAB = DISPLAY_UNIT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Section File</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECTION__SECTION_FILE = DISPLAY_UNIT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Widget</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECTION__WIDGET = DISPLAY_UNIT_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Section</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SECTION_FEATURE_COUNT = DISPLAY_UNIT_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl <em>Data Context Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDataContextElement()
+ * @generated
+ */
+ int DATA_CONTEXT_ELEMENT = 5;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ELEMENT__NAME = 0;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ELEMENT__PROPERTIES = 1;
+
+ /**
+ * The feature id for the '<em><b>Package</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ELEMENT__PACKAGE = 2;
+
+ /**
+ * The feature id for the '<em><b>Supertypes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ELEMENT__SUPERTYPES = 3;
+
+ /**
+ * The number of structural features of the '<em>Data Context Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ELEMENT_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl <em>Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.PropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getProperty()
+ * @generated
+ */
+ int PROPERTY = 6;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__NAME = 0;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__LABEL = 1;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__TYPE = 2;
+
+ /**
+ * The feature id for the '<em><b>Context Element</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__CONTEXT_ELEMENT = 3;
+
+ /**
+ * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__MULTIPLICITY = 4;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY__DESCRIPTION = 5;
+
+ /**
+ * The number of structural features of the '<em>Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_FEATURE_COUNT = 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.UnknownPropertyImpl <em>Unknown Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.UnknownPropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getUnknownProperty()
+ * @generated
+ */
+ int UNKNOWN_PROPERTY = 7;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY__NAME = PROPERTY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY__LABEL = PROPERTY__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY__TYPE = PROPERTY__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Context Element</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY__CONTEXT_ELEMENT = PROPERTY__CONTEXT_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY__MULTIPLICITY = PROPERTY__MULTIPLICITY;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY__DESCRIPTION = PROPERTY__DESCRIPTION;
+
+ /**
+ * The number of structural features of the '<em>Unknown Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int UNKNOWN_PROPERTY_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.DataContextPackageImpl <em>Data Context Package</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DataContextPackageImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDataContextPackage()
+ * @generated
+ */
+ int DATA_CONTEXT_PACKAGE = 8;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_PACKAGE__NAME = DATA_CONTEXT_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_PACKAGE__PROPERTIES = DATA_CONTEXT_ELEMENT__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Package</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_PACKAGE__PACKAGE = DATA_CONTEXT_ELEMENT__PACKAGE;
+
+ /**
+ * The feature id for the '<em><b>Supertypes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_PACKAGE__SUPERTYPES = DATA_CONTEXT_ELEMENT__SUPERTYPES;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_PACKAGE__ELEMENTS = DATA_CONTEXT_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Data Context Package</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_PACKAGE_FEATURE_COUNT = DATA_CONTEXT_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.DataContextRootImpl <em>Data Context Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DataContextRootImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDataContextRoot()
+ * @generated
+ */
+ int DATA_CONTEXT_ROOT = 9;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__NAME = DATA_CONTEXT_PACKAGE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__PROPERTIES = DATA_CONTEXT_PACKAGE__PROPERTIES;
+
+ /**
+ * The feature id for the '<em><b>Package</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__PACKAGE = DATA_CONTEXT_PACKAGE__PACKAGE;
+
+ /**
+ * The feature id for the '<em><b>Supertypes</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__SUPERTYPES = DATA_CONTEXT_PACKAGE__SUPERTYPES;
+
+ /**
+ * The feature id for the '<em><b>Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__ELEMENTS = DATA_CONTEXT_PACKAGE__ELEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__LABEL = DATA_CONTEXT_PACKAGE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Model Element Factory</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY = DATA_CONTEXT_PACKAGE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Data Context Root</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DATA_CONTEXT_ROOT_FEATURE_COUNT = DATA_CONTEXT_PACKAGE_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl <em>Constraint Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getConstraintDescriptor()
+ * @generated
+ */
+ int CONSTRAINT_DESCRIPTOR = 10;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__NAME = 0;
+
+ /**
+ * The feature id for the '<em><b>Display</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__DISPLAY = 1;
+
+ /**
+ * The feature id for the '<em><b>Overrideable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__OVERRIDEABLE = 2;
+
+ /**
+ * The feature id for the '<em><b>Overridden Constraints</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS = 3;
+
+ /**
+ * The number of structural features of the '<em>Constraint Descriptor</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_DESCRIPTOR_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.SimpleConstraintImpl <em>Simple Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.SimpleConstraintImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getSimpleConstraint()
+ * @generated
+ */
+ int SIMPLE_CONSTRAINT = 11;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__NAME = CONSTRAINT_DESCRIPTOR__NAME;
+
+ /**
+ * The feature id for the '<em><b>Display</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__DISPLAY = CONSTRAINT_DESCRIPTOR__DISPLAY;
+
+ /**
+ * The feature id for the '<em><b>Overrideable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__OVERRIDEABLE = CONSTRAINT_DESCRIPTOR__OVERRIDEABLE;
+
+ /**
+ * The feature id for the '<em><b>Overridden Constraints</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__OVERRIDDEN_CONSTRAINTS = CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS;
+
+ /**
+ * The feature id for the '<em><b>Constraint Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__CONSTRAINT_TYPE = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Properties</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT__PROPERTIES = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Simple Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SIMPLE_CONSTRAINT_FEATURE_COUNT = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.CompositeConstraintImpl <em>Composite Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.CompositeConstraintImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getCompositeConstraint()
+ * @generated
+ */
+ int COMPOSITE_CONSTRAINT = 12;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__NAME = CONSTRAINT_DESCRIPTOR__NAME;
+
+ /**
+ * The feature id for the '<em><b>Display</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__DISPLAY = CONSTRAINT_DESCRIPTOR__DISPLAY;
+
+ /**
+ * The feature id for the '<em><b>Overrideable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__OVERRIDEABLE = CONSTRAINT_DESCRIPTOR__OVERRIDEABLE;
+
+ /**
+ * The feature id for the '<em><b>Overridden Constraints</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__OVERRIDDEN_CONSTRAINTS = CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS;
+
+ /**
+ * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT__CONSTRAINTS = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Composite Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_CONSTRAINT_FEATURE_COUNT = CONSTRAINT_DESCRIPTOR_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.ConfigPropertyImpl <em>Config Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ConfigPropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getConfigProperty()
+ * @generated
+ */
+ int CONFIG_PROPERTY = 13;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONFIG_PROPERTY__NAME = 0;
+
+ /**
+ * The number of structural features of the '<em>Config Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONFIG_PROPERTY_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.ValuePropertyImpl <em>Value Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ValuePropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getValueProperty()
+ * @generated
+ */
+ int VALUE_PROPERTY = 14;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_PROPERTY__NAME = CONFIG_PROPERTY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_PROPERTY__VALUE = CONFIG_PROPERTY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Value Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int VALUE_PROPERTY_FEATURE_COUNT = CONFIG_PROPERTY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.contexts.impl.ReferencePropertyImpl <em>Reference Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ReferencePropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getReferenceProperty()
+ * @generated
+ */
+ int REFERENCE_PROPERTY = 15;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFERENCE_PROPERTY__NAME = CONFIG_PROPERTY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFERENCE_PROPERTY__VALUE = CONFIG_PROPERTY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Reference Property</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int REFERENCE_PROPERTY_FEATURE_COUNT = CONFIG_PROPERTY_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.Context <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Context</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Context
+ * @generated
+ */
+ EClass getContext();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Context#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Context#getName()
+ * @see #getContext()
+ * @generated
+ */
+ EAttribute getContext_Name();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.Context#getViews <em>Views</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Views</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Context#getViews()
+ * @see #getContext()
+ * @generated
+ */
+ EReference getContext_Views();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.Context#getTabs <em>Tabs</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Tabs</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Context#getTabs()
+ * @see #getContext()
+ * @generated
+ */
+ EReference getContext_Tabs();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.Context#getDataContexts <em>Data Contexts</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Data Contexts</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Context#getDataContexts()
+ * @see #getContext()
+ * @generated
+ */
+ EReference getContext_DataContexts();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.properties.contexts.Context#getDependencies <em>Dependencies</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Dependencies</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Context#getDependencies()
+ * @see #getContext()
+ * @generated
+ */
+ EReference getContext_Dependencies();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.DisplayUnit <em>Display Unit</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Display Unit</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DisplayUnit
+ * @generated
+ */
+ EClass getDisplayUnit();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.DisplayUnit#getConstraints <em>Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Constraints</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DisplayUnit#getConstraints()
+ * @see #getDisplayUnit()
+ * @generated
+ */
+ EReference getDisplayUnit_Constraints();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.View <em>View</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>View</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View
+ * @generated
+ */
+ EClass getView();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.View#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View#getName()
+ * @see #getView()
+ * @generated
+ */
+ EAttribute getView_Name();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.properties.contexts.View#getSections <em>Sections</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Sections</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View#getSections()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_Sections();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.View#getElementMultiplicity <em>Element Multiplicity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Element Multiplicity</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View#getElementMultiplicity()
+ * @see #getView()
+ * @generated
+ */
+ EAttribute getView_ElementMultiplicity();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.properties.contexts.View#getContext <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Context</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View#getContext()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_Context();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.View#isAutomaticContext <em>Automatic Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Automatic Context</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View#isAutomaticContext()
+ * @see #getView()
+ * @generated
+ */
+ EAttribute getView_AutomaticContext();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.properties.contexts.View#getDatacontexts <em>Datacontexts</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Datacontexts</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.View#getDatacontexts()
+ * @see #getView()
+ * @generated
+ */
+ EReference getView_Datacontexts();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.Tab <em>Tab</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Tab</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab
+ * @generated
+ */
+ EClass getTab();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Tab#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getLabel()
+ * @see #getTab()
+ * @generated
+ */
+ EAttribute getTab_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Tab#getId <em>Id</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Id</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getId()
+ * @see #getTab()
+ * @generated
+ */
+ EAttribute getTab_Id();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Tab#getCategory <em>Category</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Category</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getCategory()
+ * @see #getTab()
+ * @generated
+ */
+ EAttribute getTab_Category();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Tab#getImage <em>Image</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Image</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getImage()
+ * @see #getTab()
+ * @generated
+ */
+ EAttribute getTab_Image();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.contexts.Tab#getAfterTab <em>After Tab</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>After Tab</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getAfterTab()
+ * @see #getTab()
+ * @generated
+ */
+ EReference getTab_AfterTab();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.Tab#getSections <em>Sections</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Sections</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getSections()
+ * @see #getTab()
+ * @generated
+ */
+ EReference getTab_Sections();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Tab#isIndented <em>Indented</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Indented</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#isIndented()
+ * @see #getTab()
+ * @generated
+ */
+ EAttribute getTab_Indented();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Tab#getPriority <em>Priority</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Priority</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getPriority()
+ * @see #getTab()
+ * @generated
+ */
+ EAttribute getTab_Priority();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.Section <em>Section</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Section</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Section
+ * @generated
+ */
+ EClass getSection();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Section#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Section#getName()
+ * @see #getSection()
+ * @generated
+ */
+ EAttribute getSection_Name();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.properties.contexts.Section#getTab <em>Tab</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Tab</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Section#getTab()
+ * @see #getSection()
+ * @generated
+ */
+ EReference getSection_Tab();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Section#getSectionFile <em>Section File</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Section File</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Section#getSectionFile()
+ * @see #getSection()
+ * @generated
+ */
+ EAttribute getSection_SectionFile();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.contexts.Section#getWidget <em>Widget</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Widget</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Section#getWidget()
+ * @see #getSection()
+ * @generated
+ */
+ EReference getSection_Widget();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.DataContextElement <em>Data Context Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Data Context Element</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement
+ * @generated
+ */
+ EClass getDataContextElement();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement#getName()
+ * @see #getDataContextElement()
+ * @generated
+ */
+ EAttribute getDataContextElement_Name();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Properties</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement#getProperties()
+ * @see #getDataContextElement()
+ * @generated
+ */
+ EReference getDataContextElement_Properties();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getPackage <em>Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Package</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement#getPackage()
+ * @see #getDataContextElement()
+ * @generated
+ */
+ EReference getDataContextElement_Package();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getSupertypes <em>Supertypes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Supertypes</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement#getSupertypes()
+ * @see #getDataContextElement()
+ * @generated
+ */
+ EReference getDataContextElement_Supertypes();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.Property <em>Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Property</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property
+ * @generated
+ */
+ EClass getProperty();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Property#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property#getName()
+ * @see #getProperty()
+ * @generated
+ */
+ EAttribute getProperty_Name();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Property#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property#getLabel()
+ * @see #getProperty()
+ * @generated
+ */
+ EAttribute getProperty_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Property#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property#getType()
+ * @see #getProperty()
+ * @generated
+ */
+ EAttribute getProperty_Type();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.properties.contexts.Property#getContextElement <em>Context Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Context Element</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property#getContextElement()
+ * @see #getProperty()
+ * @generated
+ */
+ EReference getProperty_ContextElement();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Property#getMultiplicity <em>Multiplicity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Multiplicity</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property#getMultiplicity()
+ * @see #getProperty()
+ * @generated
+ */
+ EAttribute getProperty_Multiplicity();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.Property#getDescription <em>Description</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Description</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.Property#getDescription()
+ * @see #getProperty()
+ * @generated
+ */
+ EAttribute getProperty_Description();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.UnknownProperty <em>Unknown Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Unknown Property</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.UnknownProperty
+ * @generated
+ */
+ EClass getUnknownProperty();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.DataContextPackage <em>Data Context Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Data Context Package</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextPackage
+ * @generated
+ */
+ EClass getDataContextPackage();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.DataContextPackage#getElements <em>Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Elements</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextPackage#getElements()
+ * @see #getDataContextPackage()
+ * @generated
+ */
+ EReference getDataContextPackage_Elements();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.DataContextRoot <em>Data Context Root</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Data Context Root</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextRoot
+ * @generated
+ */
+ EClass getDataContextRoot();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.DataContextRoot#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextRoot#getLabel()
+ * @see #getDataContextRoot()
+ * @generated
+ */
+ EAttribute getDataContextRoot_Label();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.contexts.DataContextRoot#getModelElementFactory <em>Model Element Factory</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Model Element Factory</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextRoot#getModelElementFactory()
+ * @see #getDataContextRoot()
+ * @generated
+ */
+ EReference getDataContextRoot_ModelElementFactory();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor <em>Constraint Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Constraint Descriptor</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor
+ * @generated
+ */
+ EClass getConstraintDescriptor();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getName()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EAttribute getConstraintDescriptor_Name();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getDisplay <em>Display</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Display</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getDisplay()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EReference getConstraintDescriptor_Display();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getOverriddenConstraints <em>Overridden Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Overridden Constraints</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getOverriddenConstraints()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EReference getConstraintDescriptor_OverriddenConstraints();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint <em>Simple Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Simple Constraint</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.SimpleConstraint
+ * @generated
+ */
+ EClass getSimpleConstraint();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint#getConstraintType <em>Constraint Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Constraint Type</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.SimpleConstraint#getConstraintType()
+ * @see #getSimpleConstraint()
+ * @generated
+ */
+ EReference getSimpleConstraint_ConstraintType();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Properties</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.SimpleConstraint#getProperties()
+ * @see #getSimpleConstraint()
+ * @generated
+ */
+ EReference getSimpleConstraint_Properties();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.CompositeConstraint <em>Composite Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Composite Constraint</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.CompositeConstraint
+ * @generated
+ */
+ EClass getCompositeConstraint();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.contexts.CompositeConstraint#getConstraints <em>Constraints</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Constraints</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.CompositeConstraint#getConstraints()
+ * @see #getCompositeConstraint()
+ * @generated
+ */
+ EReference getCompositeConstraint_Constraints();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#isOverrideable <em>Overrideable</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Overrideable</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#isOverrideable()
+ * @see #getConstraintDescriptor()
+ * @generated
+ */
+ EAttribute getConstraintDescriptor_Overrideable();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.ConfigProperty <em>Config Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Config Property</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConfigProperty
+ * @generated
+ */
+ EClass getConfigProperty();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.ConfigProperty#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ConfigProperty#getName()
+ * @see #getConfigProperty()
+ * @generated
+ */
+ EAttribute getConfigProperty_Name();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.ValueProperty <em>Value Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Value Property</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ValueProperty
+ * @generated
+ */
+ EClass getValueProperty();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.contexts.ValueProperty#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ValueProperty#getValue()
+ * @see #getValueProperty()
+ * @generated
+ */
+ EAttribute getValueProperty_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.contexts.ReferenceProperty <em>Reference Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Reference Property</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ReferenceProperty
+ * @generated
+ */
+ EClass getReferenceProperty();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.contexts.ReferenceProperty#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Value</em>'.
+ * @see org.eclipse.papyrus.properties.contexts.ReferenceProperty#getValue()
+ * @see #getReferenceProperty()
+ * @generated
+ */
+ EReference getReferenceProperty_Value();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ContextsFactory getContextsFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl <em>Context</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getContext()
+ * @generated
+ */
+ EClass CONTEXT = eINSTANCE.getContext();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONTEXT__NAME = eINSTANCE.getContext_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Views</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTEXT__VIEWS = eINSTANCE.getContext_Views();
+
+ /**
+ * The meta object literal for the '<em><b>Tabs</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTEXT__TABS = eINSTANCE.getContext_Tabs();
+
+ /**
+ * The meta object literal for the '<em><b>Data Contexts</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTEXT__DATA_CONTEXTS = eINSTANCE.getContext_DataContexts();
+
+ /**
+ * The meta object literal for the '<em><b>Dependencies</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONTEXT__DEPENDENCIES = eINSTANCE.getContext_Dependencies();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.DisplayUnitImpl <em>Display Unit</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DisplayUnitImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDisplayUnit()
+ * @generated
+ */
+ EClass DISPLAY_UNIT = eINSTANCE.getDisplayUnit();
+
+ /**
+ * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DISPLAY_UNIT__CONSTRAINTS = eINSTANCE.getDisplayUnit_Constraints();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl <em>View</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ViewImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getView()
+ * @generated
+ */
+ EClass VIEW = eINSTANCE.getView();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW__NAME = eINSTANCE.getView_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Sections</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__SECTIONS = eINSTANCE.getView_Sections();
+
+ /**
+ * The meta object literal for the '<em><b>Element Multiplicity</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW__ELEMENT_MULTIPLICITY = eINSTANCE.getView_ElementMultiplicity();
+
+ /**
+ * The meta object literal for the '<em><b>Context</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__CONTEXT = eINSTANCE.getView_Context();
+
+ /**
+ * The meta object literal for the '<em><b>Automatic Context</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VIEW__AUTOMATIC_CONTEXT = eINSTANCE.getView_AutomaticContext();
+
+ /**
+ * The meta object literal for the '<em><b>Datacontexts</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference VIEW__DATACONTEXTS = eINSTANCE.getView_Datacontexts();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl <em>Tab</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.TabImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getTab()
+ * @generated
+ */
+ EClass TAB = eINSTANCE.getTab();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAB__LABEL = eINSTANCE.getTab_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Id</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAB__ID = eINSTANCE.getTab_Id();
+
+ /**
+ * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAB__CATEGORY = eINSTANCE.getTab_Category();
+
+ /**
+ * The meta object literal for the '<em><b>Image</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAB__IMAGE = eINSTANCE.getTab_Image();
+
+ /**
+ * The meta object literal for the '<em><b>After Tab</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TAB__AFTER_TAB = eINSTANCE.getTab_AfterTab();
+
+ /**
+ * The meta object literal for the '<em><b>Sections</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference TAB__SECTIONS = eINSTANCE.getTab_Sections();
+
+ /**
+ * The meta object literal for the '<em><b>Indented</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAB__INDENTED = eINSTANCE.getTab_Indented();
+
+ /**
+ * The meta object literal for the '<em><b>Priority</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute TAB__PRIORITY = eINSTANCE.getTab_Priority();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.SectionImpl <em>Section</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.SectionImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getSection()
+ * @generated
+ */
+ EClass SECTION = eINSTANCE.getSection();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECTION__NAME = eINSTANCE.getSection_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Tab</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SECTION__TAB = eINSTANCE.getSection_Tab();
+
+ /**
+ * The meta object literal for the '<em><b>Section File</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SECTION__SECTION_FILE = eINSTANCE.getSection_SectionFile();
+
+ /**
+ * The meta object literal for the '<em><b>Widget</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SECTION__WIDGET = eINSTANCE.getSection_Widget();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl <em>Data Context Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDataContextElement()
+ * @generated
+ */
+ EClass DATA_CONTEXT_ELEMENT = eINSTANCE.getDataContextElement();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_CONTEXT_ELEMENT__NAME = eINSTANCE.getDataContextElement_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DATA_CONTEXT_ELEMENT__PROPERTIES = eINSTANCE.getDataContextElement_Properties();
+
+ /**
+ * The meta object literal for the '<em><b>Package</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DATA_CONTEXT_ELEMENT__PACKAGE = eINSTANCE.getDataContextElement_Package();
+
+ /**
+ * The meta object literal for the '<em><b>Supertypes</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DATA_CONTEXT_ELEMENT__SUPERTYPES = eINSTANCE.getDataContextElement_Supertypes();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl <em>Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.PropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getProperty()
+ * @generated
+ */
+ EClass PROPERTY = eINSTANCE.getProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY__NAME = eINSTANCE.getProperty_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY__LABEL = eINSTANCE.getProperty_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY__TYPE = eINSTANCE.getProperty_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Context Element</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PROPERTY__CONTEXT_ELEMENT = eINSTANCE.getProperty_ContextElement();
+
+ /**
+ * The meta object literal for the '<em><b>Multiplicity</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY__MULTIPLICITY = eINSTANCE.getProperty_Multiplicity();
+
+ /**
+ * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY__DESCRIPTION = eINSTANCE.getProperty_Description();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.UnknownPropertyImpl <em>Unknown Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.UnknownPropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getUnknownProperty()
+ * @generated
+ */
+ EClass UNKNOWN_PROPERTY = eINSTANCE.getUnknownProperty();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.DataContextPackageImpl <em>Data Context Package</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DataContextPackageImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDataContextPackage()
+ * @generated
+ */
+ EClass DATA_CONTEXT_PACKAGE = eINSTANCE.getDataContextPackage();
+
+ /**
+ * The meta object literal for the '<em><b>Elements</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DATA_CONTEXT_PACKAGE__ELEMENTS = eINSTANCE.getDataContextPackage_Elements();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.DataContextRootImpl <em>Data Context Root</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.DataContextRootImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getDataContextRoot()
+ * @generated
+ */
+ EClass DATA_CONTEXT_ROOT = eINSTANCE.getDataContextRoot();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DATA_CONTEXT_ROOT__LABEL = eINSTANCE.getDataContextRoot_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Model Element Factory</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY = eINSTANCE.getDataContextRoot_ModelElementFactory();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl <em>Constraint Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getConstraintDescriptor()
+ * @generated
+ */
+ EClass CONSTRAINT_DESCRIPTOR = eINSTANCE.getConstraintDescriptor();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONSTRAINT_DESCRIPTOR__NAME = eINSTANCE.getConstraintDescriptor_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Display</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONSTRAINT_DESCRIPTOR__DISPLAY = eINSTANCE.getConstraintDescriptor_Display();
+
+ /**
+ * The meta object literal for the '<em><b>Overridden Constraints</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS = eINSTANCE.getConstraintDescriptor_OverriddenConstraints();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.SimpleConstraintImpl <em>Simple Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.SimpleConstraintImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getSimpleConstraint()
+ * @generated
+ */
+ EClass SIMPLE_CONSTRAINT = eINSTANCE.getSimpleConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Constraint Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SIMPLE_CONSTRAINT__CONSTRAINT_TYPE = eINSTANCE.getSimpleConstraint_ConstraintType();
+
+ /**
+ * The meta object literal for the '<em><b>Properties</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SIMPLE_CONSTRAINT__PROPERTIES = eINSTANCE.getSimpleConstraint_Properties();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.CompositeConstraintImpl <em>Composite Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.CompositeConstraintImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getCompositeConstraint()
+ * @generated
+ */
+ EClass COMPOSITE_CONSTRAINT = eINSTANCE.getCompositeConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference COMPOSITE_CONSTRAINT__CONSTRAINTS = eINSTANCE.getCompositeConstraint_Constraints();
+
+ /**
+ * The meta object literal for the '<em><b>Overrideable</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONSTRAINT_DESCRIPTOR__OVERRIDEABLE = eINSTANCE.getConstraintDescriptor_Overrideable();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.ConfigPropertyImpl <em>Config Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ConfigPropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getConfigProperty()
+ * @generated
+ */
+ EClass CONFIG_PROPERTY = eINSTANCE.getConfigProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONFIG_PROPERTY__NAME = eINSTANCE.getConfigProperty_Name();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.ValuePropertyImpl <em>Value Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ValuePropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getValueProperty()
+ * @generated
+ */
+ EClass VALUE_PROPERTY = eINSTANCE.getValueProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute VALUE_PROPERTY__VALUE = eINSTANCE.getValueProperty_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.contexts.impl.ReferencePropertyImpl <em>Reference Property</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.impl.ReferencePropertyImpl
+ * @see org.eclipse.papyrus.properties.contexts.impl.ContextsPackageImpl#getReferenceProperty()
+ * @generated
+ */
+ EClass REFERENCE_PROPERTY = eINSTANCE.getReferenceProperty();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference REFERENCE_PROPERTY__VALUE = eINSTANCE.getReferenceProperty_Value();
+
+ }
+
+} //ContextsPackage
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextElement.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextElement.java
new file mode 100644
index 00000000000..aadfc3b708a
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextElement.java
@@ -0,0 +1,126 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Context Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getProperties <em>Properties</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getPackage <em>Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getSupertypes <em>Supertypes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextElement()
+ * @model
+ * @generated
+ */
+public interface DataContextElement extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextElement_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.Property}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.Property#getContextElement <em>Context Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Properties</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Properties</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextElement_Properties()
+ * @see org.eclipse.papyrus.properties.contexts.Property#getContextElement
+ * @model opposite="contextElement" containment="true"
+ * @generated
+ */
+ EList<Property> getProperties();
+
+ /**
+ * Returns the value of the '<em><b>Package</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.DataContextPackage#getElements <em>Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Package</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Package</em>' container reference.
+ * @see #setPackage(DataContextPackage)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextElement_Package()
+ * @see org.eclipse.papyrus.properties.contexts.DataContextPackage#getElements
+ * @model opposite="elements" transient="false"
+ * @generated
+ */
+ DataContextPackage getPackage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getPackage <em>Package</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Package</em>' container reference.
+ * @see #getPackage()
+ * @generated
+ */
+ void setPackage(DataContextPackage value);
+
+ /**
+ * Returns the value of the '<em><b>Supertypes</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.DataContextElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Supertypes</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Supertypes</em>' reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextElement_Supertypes()
+ * @model
+ * @generated
+ */
+ EList<DataContextElement> getSupertypes();
+
+} // DataContextElement
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextPackage.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextPackage.java
new file mode 100644
index 00000000000..df1aef61e62
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextPackage.java
@@ -0,0 +1,51 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Context Package</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextPackage#getElements <em>Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextPackage()
+ * @model
+ * @generated
+ */
+public interface DataContextPackage extends DataContextElement {
+ /**
+ * Returns the value of the '<em><b>Elements</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.DataContextElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getPackage <em>Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Elements</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Elements</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextPackage_Elements()
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement#getPackage
+ * @model opposite="package" containment="true"
+ * @generated
+ */
+ EList<DataContextElement> getElements();
+
+} // DataContextPackage
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextRoot.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextRoot.java
new file mode 100644
index 00000000000..0b0eb7e0ce8
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DataContextRoot.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Context Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextRoot#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DataContextRoot#getModelElementFactory <em>Model Element Factory</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextRoot()
+ * @model
+ * @generated
+ */
+public interface DataContextRoot extends DataContextPackage {
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextRoot_Label()
+ * @model required="true"
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.DataContextRoot#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Model Element Factory</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Model Element Factory</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Model Element Factory</em>' reference.
+ * @see #setModelElementFactory(ModelElementFactoryDescriptor)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDataContextRoot_ModelElementFactory()
+ * @model required="true"
+ * @generated
+ */
+ ModelElementFactoryDescriptor getModelElementFactory();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.DataContextRoot#getModelElementFactory <em>Model Element Factory</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Model Element Factory</em>' reference.
+ * @see #getModelElementFactory()
+ * @generated
+ */
+ void setModelElementFactory(ModelElementFactoryDescriptor value);
+
+} // DataContextRoot
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DisplayUnit.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DisplayUnit.java
new file mode 100644
index 00000000000..4723339b286
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/DisplayUnit.java
@@ -0,0 +1,53 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Display Unit</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.DisplayUnit#getConstraints <em>Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDisplayUnit()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DisplayUnit extends EObject {
+ /**
+ * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getDisplay <em>Display</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraints</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Constraints</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getDisplayUnit_Constraints()
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor#getDisplay
+ * @model opposite="display" containment="true"
+ * @generated
+ */
+ EList<ConstraintDescriptor> getConstraints();
+
+} // DisplayUnit
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Property.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Property.java
new file mode 100644
index 00000000000..070e3bafd68
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Property.java
@@ -0,0 +1,202 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.properties.environment.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Property#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Property#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Property#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Property#getContextElement <em>Context Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Property#getMultiplicity <em>Multiplicity</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Property#getDescription <em>Description</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty()
+ * @model
+ * @generated
+ */
+public interface Property extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Property#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty_Label()
+ * @model
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Property#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.properties.environment.Type}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @see #setType(Type)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty_Type()
+ * @model required="true"
+ * @generated
+ */
+ Type getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Property#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @see #getType()
+ * @generated
+ */
+ void setType(Type value);
+
+ /**
+ * Returns the value of the '<em><b>Context Element</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.DataContextElement#getProperties <em>Properties</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Context Element</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Context Element</em>' container reference.
+ * @see #setContextElement(DataContextElement)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty_ContextElement()
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement#getProperties
+ * @model opposite="properties" transient="false"
+ * @generated
+ */
+ DataContextElement getContextElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Property#getContextElement <em>Context Element</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Context Element</em>' container reference.
+ * @see #getContextElement()
+ * @generated
+ */
+ void setContextElement(DataContextElement value);
+
+ /**
+ * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+ * The default value is <code>"1"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Multiplicity</em>' attribute.
+ * @see #setMultiplicity(int)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty_Multiplicity()
+ * @model default="1" required="true"
+ * @generated
+ */
+ int getMultiplicity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Property#getMultiplicity <em>Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Multiplicity</em>' attribute.
+ * @see #getMultiplicity()
+ * @generated
+ */
+ void setMultiplicity(int value);
+
+ /**
+ * Returns the value of the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Description</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Description</em>' attribute.
+ * @see #setDescription(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getProperty_Description()
+ * @model
+ * @generated
+ */
+ String getDescription();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Property#getDescription <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Description</em>' attribute.
+ * @see #getDescription()
+ * @generated
+ */
+ void setDescription(String value);
+
+} // Property
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ReferenceProperty.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ReferenceProperty.java
new file mode 100644
index 00000000000..f7fd803b499
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ReferenceProperty.java
@@ -0,0 +1,59 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reference Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ReferenceProperty#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getReferenceProperty()
+ * @model
+ * @generated
+ */
+public interface ReferenceProperty extends ConfigProperty {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' reference.
+ * @see #setValue(EObject)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getReferenceProperty_Value()
+ * @model required="true"
+ * @generated
+ */
+ EObject getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.ReferenceProperty#getValue <em>Value</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' reference.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(EObject value);
+
+} // ReferenceProperty
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Section.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Section.java
new file mode 100644
index 00000000000..1728bab41d8
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Section.java
@@ -0,0 +1,142 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.papyrus.properties.ui.CompositeWidget;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Section</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Section#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Section#getTab <em>Tab</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Section#getSectionFile <em>Section File</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Section#getWidget <em>Widget</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSection()
+ * @model
+ * @generated
+ */
+public interface Section extends DisplayUnit {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSection_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Section#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Tab</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.Tab#getSections <em>Sections</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Tab</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Tab</em>' container reference.
+ * @see #setTab(Tab)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSection_Tab()
+ * @see org.eclipse.papyrus.properties.contexts.Tab#getSections
+ * @model opposite="sections" required="true" transient="false"
+ * @generated
+ */
+ Tab getTab();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Section#getTab <em>Tab</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Tab</em>' container reference.
+ * @see #getTab()
+ * @generated
+ */
+ void setTab(Tab value);
+
+ /**
+ * Returns the value of the '<em><b>Section File</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Section File</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Section File</em>' attribute.
+ * @see #setSectionFile(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSection_SectionFile()
+ * @model required="true"
+ * @generated
+ */
+ String getSectionFile();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Section#getSectionFile <em>Section File</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Section File</em>' attribute.
+ * @see #getSectionFile()
+ * @generated
+ */
+ void setSectionFile(String value);
+
+ /**
+ * Returns the value of the '<em><b>Widget</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Widget</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Widget</em>' reference.
+ * @see #setWidget(CompositeWidget)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSection_Widget()
+ * @model required="true"
+ * @generated
+ */
+ CompositeWidget getWidget();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Section#getWidget <em>Widget</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Widget</em>' reference.
+ * @see #getWidget()
+ * @generated
+ */
+ void setWidget(CompositeWidget value);
+
+} // Section
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/SimpleConstraint.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/SimpleConstraint.java
new file mode 100644
index 00000000000..de8930994c8
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/SimpleConstraint.java
@@ -0,0 +1,78 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.properties.environment.ConstraintType;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Simple Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint#getConstraintType <em>Constraint Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSimpleConstraint()
+ * @model
+ * @generated
+ */
+public interface SimpleConstraint extends ConstraintDescriptor {
+ /**
+ * Returns the value of the '<em><b>Constraint Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraint Type</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Constraint Type</em>' reference.
+ * @see #setConstraintType(ConstraintType)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSimpleConstraint_ConstraintType()
+ * @model required="true"
+ * @generated
+ */
+ ConstraintType getConstraintType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint#getConstraintType <em>Constraint Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Constraint Type</em>' reference.
+ * @see #getConstraintType()
+ * @generated
+ */
+ void setConstraintType(ConstraintType value);
+
+ /**
+ * Returns the value of the '<em><b>Properties</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.ConfigProperty}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Properties</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Properties</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getSimpleConstraint_Properties()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ConfigProperty> getProperties();
+
+} // SimpleConstraint
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Tab.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Tab.java
new file mode 100644
index 00000000000..e357ccf2475
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/Tab.java
@@ -0,0 +1,235 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Tab</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getId <em>Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getCategory <em>Category</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getImage <em>Image</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getAfterTab <em>After Tab</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getSections <em>Sections</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#isIndented <em>Indented</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.Tab#getPriority <em>Priority</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab()
+ * @model
+ * @generated
+ */
+public interface Tab extends EObject {
+
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Label()
+ * @model required="true"
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Id</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Id</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Id</em>' attribute.
+ * @see #setId(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Id()
+ * @model required="true"
+ * @generated
+ */
+ String getId();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#getId <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Id</em>' attribute.
+ * @see #getId()
+ * @generated
+ */
+ void setId(String value);
+
+ /**
+ * Returns the value of the '<em><b>Category</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Category</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Category</em>' attribute.
+ * @see #setCategory(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Category()
+ * @model
+ * @generated
+ */
+ String getCategory();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#getCategory <em>Category</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Category</em>' attribute.
+ * @see #getCategory()
+ * @generated
+ */
+ void setCategory(String value);
+
+ /**
+ * Returns the value of the '<em><b>Image</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Image</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Image</em>' attribute.
+ * @see #setImage(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Image()
+ * @model
+ * @generated
+ */
+ String getImage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#getImage <em>Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Image</em>' attribute.
+ * @see #getImage()
+ * @generated
+ */
+ void setImage(String value);
+
+ /**
+ * Returns the value of the '<em><b>After Tab</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>After Tab</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>After Tab</em>' reference.
+ * @see #setAfterTab(Tab)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_AfterTab()
+ * @model
+ * @generated
+ */
+ Tab getAfterTab();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#getAfterTab <em>After Tab</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>After Tab</em>' reference.
+ * @see #getAfterTab()
+ * @generated
+ */
+ void setAfterTab(Tab value);
+
+ /**
+ * Returns the value of the '<em><b>Sections</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.Section}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.Section#getTab <em>Tab</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Sections</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Sections</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Sections()
+ * @see org.eclipse.papyrus.properties.contexts.Section#getTab
+ * @model opposite="tab" containment="true"
+ * @generated
+ */
+ EList<Section> getSections();
+
+ /**
+ * Returns the value of the '<em><b>Indented</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Indented</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Indented</em>' attribute.
+ * @see #setIndented(boolean)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Indented()
+ * @model default="false" required="true"
+ * @generated
+ */
+ boolean isIndented();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#isIndented <em>Indented</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Indented</em>' attribute.
+ * @see #isIndented()
+ * @generated
+ */
+ void setIndented(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Priority</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Priority</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Priority</em>' attribute.
+ * @see #setPriority(int)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getTab_Priority()
+ * @model
+ * @generated
+ */
+ int getPriority();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.Tab#getPriority <em>Priority</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Priority</em>' attribute.
+ * @see #getPriority()
+ * @generated
+ */
+ void setPriority(int value);
+} // Tab
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/UnknownProperty.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/UnknownProperty.java
new file mode 100644
index 00000000000..809ad41c17e
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/UnknownProperty.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Unknown Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getUnknownProperty()
+ * @model
+ * @generated
+ */
+public interface UnknownProperty extends Property {
+} // UnknownProperty
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ValueProperty.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ValueProperty.java
new file mode 100644
index 00000000000..5eb157de61b
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/ValueProperty.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Value Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.ValueProperty#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getValueProperty()
+ * @model
+ * @generated
+ */
+public interface ValueProperty extends ConfigProperty {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getValueProperty_Value()
+ * @model required="true"
+ * @generated
+ */
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.ValueProperty#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(String value);
+
+} // ValueProperty
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/View.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/View.java
new file mode 100644
index 00000000000..4ed03a87ae7
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/View.java
@@ -0,0 +1,177 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.View#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.View#getSections <em>Sections</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.View#getElementMultiplicity <em>Element Multiplicity</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.View#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.View#isAutomaticContext <em>Automatic Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.View#getDatacontexts <em>Datacontexts</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView()
+ * @model
+ * @generated
+ */
+public interface View extends DisplayUnit {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.View#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Sections</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.Section}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Sections</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Sections</em>' reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView_Sections()
+ * @model
+ * @generated
+ */
+ EList<Section> getSections();
+
+ /**
+ * Returns the value of the '<em><b>Element Multiplicity</b></em>' attribute.
+ * The default value is <code>"1"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Element Multiplicity</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Element Multiplicity</em>' attribute.
+ * @see #setElementMultiplicity(int)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView_ElementMultiplicity()
+ * @model default="1" required="true"
+ * @generated
+ */
+ int getElementMultiplicity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.View#getElementMultiplicity <em>Element Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Element Multiplicity</em>' attribute.
+ * @see #getElementMultiplicity()
+ * @generated
+ */
+ void setElementMultiplicity(int value);
+
+ /**
+ * Returns the value of the '<em><b>Context</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.properties.contexts.Context#getViews <em>Views</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Context</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Context</em>' container reference.
+ * @see #setContext(Context)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView_Context()
+ * @see org.eclipse.papyrus.properties.contexts.Context#getViews
+ * @model opposite="views" required="true" transient="false"
+ * @generated
+ */
+ Context getContext();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.View#getContext <em>Context</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Context</em>' container reference.
+ * @see #getContext()
+ * @generated
+ */
+ void setContext(Context value);
+
+ /**
+ * Returns the value of the '<em><b>Automatic Context</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Automatic Context</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Automatic Context</em>' attribute.
+ * @see #setAutomaticContext(boolean)
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView_AutomaticContext()
+ * @model required="true"
+ * @generated
+ */
+ boolean isAutomaticContext();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.contexts.View#isAutomaticContext <em>Automatic Context</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Automatic Context</em>' attribute.
+ * @see #isAutomaticContext()
+ * @generated
+ */
+ void setAutomaticContext(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Datacontexts</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.contexts.DataContextElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Datacontexts</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Datacontexts</em>' reference list.
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#getView_Datacontexts()
+ * @model
+ * @generated
+ */
+ EList<DataContextElement> getDatacontexts();
+
+} // View
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/CompositeConstraintImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/CompositeConstraintImpl.java
new file mode 100644
index 00000000000..72a1aba4f33
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/CompositeConstraintImpl.java
@@ -0,0 +1,159 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.CompositeConstraint;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.SimpleConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Composite Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.CompositeConstraintImpl#getConstraints <em>Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CompositeConstraintImpl extends ConstraintDescriptorImpl implements CompositeConstraint {
+ /**
+ * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConstraints()
+ * @generated
+ * @ordered
+ */
+ protected EList<SimpleConstraint> constraints;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CompositeConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.COMPOSITE_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<SimpleConstraint> getConstraints() {
+ if (constraints == null) {
+ constraints = new EObjectContainmentEList<SimpleConstraint>(SimpleConstraint.class, this, ContextsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS);
+ }
+ return constraints;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ return ((InternalEList<?>)getConstraints()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ return getConstraints();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ getConstraints().clear();
+ getConstraints().addAll((Collection<? extends SimpleConstraint>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ getConstraints().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.COMPOSITE_CONSTRAINT__CONSTRAINTS:
+ return constraints != null && !constraints.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //CompositeConstraintImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConfigPropertyImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConfigPropertyImpl.java
new file mode 100644
index 00000000000..cc4c9598cd2
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConfigPropertyImpl.java
@@ -0,0 +1,172 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.papyrus.properties.contexts.ConfigProperty;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Config Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ConfigPropertyImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class ConfigPropertyImpl extends EObjectImpl implements ConfigProperty {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConfigPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.CONFIG_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.CONFIG_PROPERTY__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.CONFIG_PROPERTY__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.CONFIG_PROPERTY__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.CONFIG_PROPERTY__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.CONFIG_PROPERTY__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ConfigPropertyImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConstraintDescriptorImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConstraintDescriptorImpl.java
new file mode 100644
index 00000000000..f26b373bc3d
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ConstraintDescriptorImpl.java
@@ -0,0 +1,373 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.ConfigProperty;
+import org.eclipse.papyrus.properties.contexts.ConstraintDescriptor;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DisplayUnit;
+
+import org.eclipse.papyrus.properties.contexts.SimpleConstraint;
+import org.eclipse.papyrus.properties.environment.ConstraintType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl#getDisplay <em>Display</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl#isOverrideable <em>Overrideable</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ConstraintDescriptorImpl#getOverriddenConstraints <em>Overridden Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class ConstraintDescriptorImpl extends EObjectImpl implements ConstraintDescriptor {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isOverrideable() <em>Overrideable</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isOverrideable()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean OVERRIDEABLE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isOverrideable() <em>Overrideable</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isOverrideable()
+ * @generated
+ * @ordered
+ */
+ protected boolean overrideable = OVERRIDEABLE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getOverriddenConstraints() <em>Overridden Constraints</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverriddenConstraints()
+ * @generated
+ * @ordered
+ */
+ protected EList<SimpleConstraint> overriddenConstraints;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConstraintDescriptorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.CONSTRAINT_DESCRIPTOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.CONSTRAINT_DESCRIPTOR__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DisplayUnit getDisplay() {
+ if (eContainerFeatureID() != ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY) return null;
+ return (DisplayUnit)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetDisplay(DisplayUnit newDisplay, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newDisplay, ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDisplay(DisplayUnit newDisplay) {
+ if (newDisplay != eInternalContainer() || (eContainerFeatureID() != ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY && newDisplay != null)) {
+ if (EcoreUtil.isAncestor(this, newDisplay))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newDisplay != null)
+ msgs = ((InternalEObject)newDisplay).eInverseAdd(this, ContextsPackage.DISPLAY_UNIT__CONSTRAINTS, DisplayUnit.class, msgs);
+ msgs = basicSetDisplay(newDisplay, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY, newDisplay, newDisplay));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<SimpleConstraint> getOverriddenConstraints() {
+ if (overriddenConstraints == null) {
+ overriddenConstraints = new EObjectResolvingEList<SimpleConstraint>(SimpleConstraint.class, this, ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS);
+ }
+ return overriddenConstraints;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isOverrideable() {
+ return overrideable;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOverrideable(boolean newOverrideable) {
+ boolean oldOverrideable = overrideable;
+ overrideable = newOverrideable;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE, oldOverrideable, overrideable));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetDisplay((DisplayUnit)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return basicSetDisplay(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return eInternalContainer().eInverseRemove(this, ContextsPackage.DISPLAY_UNIT__CONSTRAINTS, DisplayUnit.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ return getName();
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return getDisplay();
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ return isOverrideable();
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ return getOverriddenConstraints();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ setName((String)newValue);
+ return;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ setDisplay((DisplayUnit)newValue);
+ return;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ setOverrideable((Boolean)newValue);
+ return;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ getOverriddenConstraints().clear();
+ getOverriddenConstraints().addAll((Collection<? extends SimpleConstraint>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ setDisplay((DisplayUnit)null);
+ return;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ setOverrideable(OVERRIDEABLE_EDEFAULT);
+ return;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ getOverriddenConstraints().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY:
+ return getDisplay() != null;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDEABLE:
+ return overrideable != OVERRIDEABLE_EDEFAULT;
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS:
+ return overriddenConstraints != null && !overriddenConstraints.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(", overrideable: ");
+ result.append(overrideable);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ConstraintDescriptorImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextImpl.java
new file mode 100644
index 00000000000..5110cb03b69
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextImpl.java
@@ -0,0 +1,357 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EModelElementImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.Context;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextRoot;
+import org.eclipse.papyrus.properties.contexts.Tab;
+import org.eclipse.papyrus.properties.contexts.View;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Context</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl#getDependencies <em>Dependencies</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl#getTabs <em>Tabs</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl#getViews <em>Views</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ContextImpl#getDataContexts <em>Data Contexts</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ContextImpl extends EModelElementImpl implements Context {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getDependencies() <em>Dependencies</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDependencies()
+ * @generated
+ * @ordered
+ */
+ protected EList<Context> dependencies;
+
+ /**
+ * The cached value of the '{@link #getTabs() <em>Tabs</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTabs()
+ * @generated
+ * @ordered
+ */
+ protected EList<Tab> tabs;
+
+ /**
+ * The cached value of the '{@link #getViews() <em>Views</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getViews()
+ * @generated
+ * @ordered
+ */
+ protected EList<View> views;
+
+ /**
+ * The cached value of the '{@link #getDataContexts() <em>Data Contexts</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDataContexts()
+ * @generated
+ * @ordered
+ */
+ protected EList<DataContextRoot> dataContexts;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContextImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.CONTEXT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.CONTEXT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<View> getViews() {
+ if (views == null) {
+ views = new EObjectContainmentWithInverseEList<View>(View.class, this, ContextsPackage.CONTEXT__VIEWS, ContextsPackage.VIEW__CONTEXT);
+ }
+ return views;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Tab> getTabs() {
+ if (tabs == null) {
+ tabs = new EObjectContainmentEList<Tab>(Tab.class, this, ContextsPackage.CONTEXT__TABS);
+ }
+ return tabs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<DataContextRoot> getDataContexts() {
+ if (dataContexts == null) {
+ dataContexts = new EObjectContainmentEList<DataContextRoot>(DataContextRoot.class, this, ContextsPackage.CONTEXT__DATA_CONTEXTS);
+ }
+ return dataContexts;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Context> getDependencies() {
+ if (dependencies == null) {
+ dependencies = new EObjectResolvingEList<Context>(Context.class, this, ContextsPackage.CONTEXT__DEPENDENCIES);
+ }
+ return dependencies;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.CONTEXT__VIEWS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getViews()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.CONTEXT__TABS:
+ return ((InternalEList<?>)getTabs()).basicRemove(otherEnd, msgs);
+ case ContextsPackage.CONTEXT__VIEWS:
+ return ((InternalEList<?>)getViews()).basicRemove(otherEnd, msgs);
+ case ContextsPackage.CONTEXT__DATA_CONTEXTS:
+ return ((InternalEList<?>)getDataContexts()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.CONTEXT__NAME:
+ return getName();
+ case ContextsPackage.CONTEXT__DEPENDENCIES:
+ return getDependencies();
+ case ContextsPackage.CONTEXT__TABS:
+ return getTabs();
+ case ContextsPackage.CONTEXT__VIEWS:
+ return getViews();
+ case ContextsPackage.CONTEXT__DATA_CONTEXTS:
+ return getDataContexts();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.CONTEXT__NAME:
+ setName((String)newValue);
+ return;
+ case ContextsPackage.CONTEXT__DEPENDENCIES:
+ getDependencies().clear();
+ getDependencies().addAll((Collection<? extends Context>)newValue);
+ return;
+ case ContextsPackage.CONTEXT__TABS:
+ getTabs().clear();
+ getTabs().addAll((Collection<? extends Tab>)newValue);
+ return;
+ case ContextsPackage.CONTEXT__VIEWS:
+ getViews().clear();
+ getViews().addAll((Collection<? extends View>)newValue);
+ return;
+ case ContextsPackage.CONTEXT__DATA_CONTEXTS:
+ getDataContexts().clear();
+ getDataContexts().addAll((Collection<? extends DataContextRoot>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.CONTEXT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ContextsPackage.CONTEXT__DEPENDENCIES:
+ getDependencies().clear();
+ return;
+ case ContextsPackage.CONTEXT__TABS:
+ getTabs().clear();
+ return;
+ case ContextsPackage.CONTEXT__VIEWS:
+ getViews().clear();
+ return;
+ case ContextsPackage.CONTEXT__DATA_CONTEXTS:
+ getDataContexts().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.CONTEXT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ContextsPackage.CONTEXT__DEPENDENCIES:
+ return dependencies != null && !dependencies.isEmpty();
+ case ContextsPackage.CONTEXT__TABS:
+ return tabs != null && !tabs.isEmpty();
+ case ContextsPackage.CONTEXT__VIEWS:
+ return views != null && !views.isEmpty();
+ case ContextsPackage.CONTEXT__DATA_CONTEXTS:
+ return dataContexts != null && !dataContexts.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ContextImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsFactoryImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsFactoryImpl.java
new file mode 100644
index 00000000000..78f943dd059
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsFactoryImpl.java
@@ -0,0 +1,236 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.properties.contexts.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ContextsFactoryImpl extends EFactoryImpl implements ContextsFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ContextsFactory init() {
+ try {
+ ContextsFactory theContextsFactory = (ContextsFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/properties/contexts");
+ if (theContextsFactory != null) {
+ return theContextsFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ContextsFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ContextsFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ContextsPackage.CONTEXT: return createContext();
+ case ContextsPackage.TAB: return createTab();
+ case ContextsPackage.VIEW: return createView();
+ case ContextsPackage.SECTION: return createSection();
+ case ContextsPackage.DATA_CONTEXT_ELEMENT: return createDataContextElement();
+ case ContextsPackage.PROPERTY: return createProperty();
+ case ContextsPackage.UNKNOWN_PROPERTY: return createUnknownProperty();
+ case ContextsPackage.DATA_CONTEXT_PACKAGE: return createDataContextPackage();
+ case ContextsPackage.DATA_CONTEXT_ROOT: return createDataContextRoot();
+ case ContextsPackage.SIMPLE_CONSTRAINT: return createSimpleConstraint();
+ case ContextsPackage.COMPOSITE_CONSTRAINT: return createCompositeConstraint();
+ case ContextsPackage.VALUE_PROPERTY: return createValueProperty();
+ case ContextsPackage.REFERENCE_PROPERTY: return createReferenceProperty();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Context createContext() {
+ ContextImpl context = new ContextImpl();
+ return context;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public View createView() {
+ ViewImpl view = new ViewImpl();
+ return view;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Tab createTab() {
+ TabImpl tab = new TabImpl();
+ return tab;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Section createSection() {
+ SectionImpl section = new SectionImpl();
+ return section;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataContextElement createDataContextElement() {
+ DataContextElementImpl dataContextElement = new DataContextElementImpl();
+ return dataContextElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property createProperty() {
+ PropertyImpl property = new PropertyImpl();
+ return property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public UnknownProperty createUnknownProperty() {
+ UnknownPropertyImpl unknownProperty = new UnknownPropertyImpl();
+ return unknownProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataContextPackage createDataContextPackage() {
+ DataContextPackageImpl dataContextPackage = new DataContextPackageImpl();
+ return dataContextPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataContextRoot createDataContextRoot() {
+ DataContextRootImpl dataContextRoot = new DataContextRootImpl();
+ return dataContextRoot;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SimpleConstraint createSimpleConstraint() {
+ SimpleConstraintImpl simpleConstraint = new SimpleConstraintImpl();
+ return simpleConstraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CompositeConstraint createCompositeConstraint() {
+ CompositeConstraintImpl compositeConstraint = new CompositeConstraintImpl();
+ return compositeConstraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ValueProperty createValueProperty() {
+ ValuePropertyImpl valueProperty = new ValuePropertyImpl();
+ return valueProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ReferenceProperty createReferenceProperty() {
+ ReferencePropertyImpl referenceProperty = new ReferencePropertyImpl();
+ return referenceProperty;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ContextsPackage getContextsPackage() {
+ return (ContextsPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ContextsPackage getPackage() {
+ return ContextsPackage.eINSTANCE;
+ }
+
+} //ContextsFactoryImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsPackageImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsPackageImpl.java
new file mode 100644
index 00000000000..7bb338bbf70
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ContextsPackageImpl.java
@@ -0,0 +1,1043 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.properties.contexts.CompositeConstraint;
+import org.eclipse.papyrus.properties.contexts.ConfigProperty;
+import org.eclipse.papyrus.properties.contexts.ConstraintDescriptor;
+import org.eclipse.papyrus.properties.contexts.Context;
+import org.eclipse.papyrus.properties.contexts.ContextsFactory;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.properties.contexts.DataContextPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextRoot;
+import org.eclipse.papyrus.properties.contexts.DisplayUnit;
+import org.eclipse.papyrus.properties.contexts.Property;
+import org.eclipse.papyrus.properties.contexts.ReferenceProperty;
+import org.eclipse.papyrus.properties.contexts.Section;
+import org.eclipse.papyrus.properties.contexts.SimpleConstraint;
+import org.eclipse.papyrus.properties.contexts.Tab;
+import org.eclipse.papyrus.properties.contexts.UnknownProperty;
+import org.eclipse.papyrus.properties.contexts.ValueProperty;
+import org.eclipse.papyrus.properties.contexts.View;
+
+import org.eclipse.papyrus.properties.environment.EnvironmentPackage;
+
+import org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl;
+
+import org.eclipse.papyrus.properties.ui.UiPackage;
+
+import org.eclipse.papyrus.properties.ui.impl.UiPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ContextsPackageImpl extends EPackageImpl implements ContextsPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass contextEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass displayUnitEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass viewEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass tabEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass sectionEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dataContextElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass propertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass unknownPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dataContextPackageEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass dataContextRootEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass constraintDescriptorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass simpleConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass compositeConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass configPropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass valuePropertyEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass referencePropertyEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ContextsPackageImpl() {
+ super(eNS_URI, ContextsFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link ContextsPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ContextsPackage init() {
+ if (isInited) return (ContextsPackage)EPackage.Registry.INSTANCE.getEPackage(ContextsPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ContextsPackageImpl theContextsPackage = (ContextsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ContextsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ContextsPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ EnvironmentPackageImpl theEnvironmentPackage = (EnvironmentPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI) instanceof EnvironmentPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI) : EnvironmentPackage.eINSTANCE);
+ UiPackageImpl theUiPackage = (UiPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(UiPackage.eNS_URI) instanceof UiPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(UiPackage.eNS_URI) : UiPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theContextsPackage.createPackageContents();
+ theEnvironmentPackage.createPackageContents();
+ theUiPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theContextsPackage.initializePackageContents();
+ theEnvironmentPackage.initializePackageContents();
+ theUiPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theContextsPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ContextsPackage.eNS_URI, theContextsPackage);
+ return theContextsPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getContext() {
+ return contextEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getContext_Name() {
+ return (EAttribute)contextEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContext_Views() {
+ return (EReference)contextEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContext_Tabs() {
+ return (EReference)contextEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContext_DataContexts() {
+ return (EReference)contextEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getContext_Dependencies() {
+ return (EReference)contextEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDisplayUnit() {
+ return displayUnitEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDisplayUnit_Constraints() {
+ return (EReference)displayUnitEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getView() {
+ return viewEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getView_Name() {
+ return (EAttribute)viewEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_Sections() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getView_ElementMultiplicity() {
+ return (EAttribute)viewEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_Context() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getView_AutomaticContext() {
+ return (EAttribute)viewEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getView_Datacontexts() {
+ return (EReference)viewEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTab() {
+ return tabEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTab_Label() {
+ return (EAttribute)tabEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTab_Id() {
+ return (EAttribute)tabEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTab_Category() {
+ return (EAttribute)tabEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTab_Image() {
+ return (EAttribute)tabEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTab_AfterTab() {
+ return (EReference)tabEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getTab_Sections() {
+ return (EReference)tabEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTab_Indented() {
+ return (EAttribute)tabEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getTab_Priority() {
+ return (EAttribute)tabEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSection() {
+ return sectionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSection_Name() {
+ return (EAttribute)sectionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSection_Tab() {
+ return (EReference)sectionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSection_SectionFile() {
+ return (EAttribute)sectionEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSection_Widget() {
+ return (EReference)sectionEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDataContextElement() {
+ return dataContextElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDataContextElement_Name() {
+ return (EAttribute)dataContextElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDataContextElement_Properties() {
+ return (EReference)dataContextElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDataContextElement_Package() {
+ return (EReference)dataContextElementEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDataContextElement_Supertypes() {
+ return (EReference)dataContextElementEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getProperty() {
+ return propertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProperty_Name() {
+ return (EAttribute)propertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProperty_Label() {
+ return (EAttribute)propertyEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProperty_Type() {
+ return (EAttribute)propertyEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getProperty_ContextElement() {
+ return (EReference)propertyEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProperty_Multiplicity() {
+ return (EAttribute)propertyEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getProperty_Description() {
+ return (EAttribute)propertyEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getUnknownProperty() {
+ return unknownPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDataContextPackage() {
+ return dataContextPackageEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDataContextPackage_Elements() {
+ return (EReference)dataContextPackageEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDataContextRoot() {
+ return dataContextRootEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDataContextRoot_Label() {
+ return (EAttribute)dataContextRootEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDataContextRoot_ModelElementFactory() {
+ return (EReference)dataContextRootEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getConstraintDescriptor() {
+ return constraintDescriptorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getConstraintDescriptor_Name() {
+ return (EAttribute)constraintDescriptorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getConstraintDescriptor_Display() {
+ return (EReference)constraintDescriptorEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getConstraintDescriptor_OverriddenConstraints() {
+ return (EReference)constraintDescriptorEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSimpleConstraint() {
+ return simpleConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSimpleConstraint_ConstraintType() {
+ return (EReference)simpleConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSimpleConstraint_Properties() {
+ return (EReference)simpleConstraintEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCompositeConstraint() {
+ return compositeConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getCompositeConstraint_Constraints() {
+ return (EReference)compositeConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getConstraintDescriptor_Overrideable() {
+ return (EAttribute)constraintDescriptorEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getConfigProperty() {
+ return configPropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getConfigProperty_Name() {
+ return (EAttribute)configPropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getValueProperty() {
+ return valuePropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getValueProperty_Value() {
+ return (EAttribute)valuePropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getReferenceProperty() {
+ return referencePropertyEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getReferenceProperty_Value() {
+ return (EReference)referencePropertyEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ContextsFactory getContextsFactory() {
+ return (ContextsFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ contextEClass = createEClass(CONTEXT);
+ createEAttribute(contextEClass, CONTEXT__NAME);
+ createEReference(contextEClass, CONTEXT__DEPENDENCIES);
+ createEReference(contextEClass, CONTEXT__TABS);
+ createEReference(contextEClass, CONTEXT__VIEWS);
+ createEReference(contextEClass, CONTEXT__DATA_CONTEXTS);
+
+ displayUnitEClass = createEClass(DISPLAY_UNIT);
+ createEReference(displayUnitEClass, DISPLAY_UNIT__CONSTRAINTS);
+
+ tabEClass = createEClass(TAB);
+ createEAttribute(tabEClass, TAB__LABEL);
+ createEAttribute(tabEClass, TAB__ID);
+ createEAttribute(tabEClass, TAB__CATEGORY);
+ createEAttribute(tabEClass, TAB__IMAGE);
+ createEReference(tabEClass, TAB__AFTER_TAB);
+ createEReference(tabEClass, TAB__SECTIONS);
+ createEAttribute(tabEClass, TAB__INDENTED);
+ createEAttribute(tabEClass, TAB__PRIORITY);
+
+ viewEClass = createEClass(VIEW);
+ createEAttribute(viewEClass, VIEW__NAME);
+ createEReference(viewEClass, VIEW__SECTIONS);
+ createEAttribute(viewEClass, VIEW__ELEMENT_MULTIPLICITY);
+ createEReference(viewEClass, VIEW__CONTEXT);
+ createEAttribute(viewEClass, VIEW__AUTOMATIC_CONTEXT);
+ createEReference(viewEClass, VIEW__DATACONTEXTS);
+
+ sectionEClass = createEClass(SECTION);
+ createEAttribute(sectionEClass, SECTION__NAME);
+ createEReference(sectionEClass, SECTION__TAB);
+ createEAttribute(sectionEClass, SECTION__SECTION_FILE);
+ createEReference(sectionEClass, SECTION__WIDGET);
+
+ dataContextElementEClass = createEClass(DATA_CONTEXT_ELEMENT);
+ createEAttribute(dataContextElementEClass, DATA_CONTEXT_ELEMENT__NAME);
+ createEReference(dataContextElementEClass, DATA_CONTEXT_ELEMENT__PROPERTIES);
+ createEReference(dataContextElementEClass, DATA_CONTEXT_ELEMENT__PACKAGE);
+ createEReference(dataContextElementEClass, DATA_CONTEXT_ELEMENT__SUPERTYPES);
+
+ propertyEClass = createEClass(PROPERTY);
+ createEAttribute(propertyEClass, PROPERTY__NAME);
+ createEAttribute(propertyEClass, PROPERTY__LABEL);
+ createEAttribute(propertyEClass, PROPERTY__TYPE);
+ createEReference(propertyEClass, PROPERTY__CONTEXT_ELEMENT);
+ createEAttribute(propertyEClass, PROPERTY__MULTIPLICITY);
+ createEAttribute(propertyEClass, PROPERTY__DESCRIPTION);
+
+ unknownPropertyEClass = createEClass(UNKNOWN_PROPERTY);
+
+ dataContextPackageEClass = createEClass(DATA_CONTEXT_PACKAGE);
+ createEReference(dataContextPackageEClass, DATA_CONTEXT_PACKAGE__ELEMENTS);
+
+ dataContextRootEClass = createEClass(DATA_CONTEXT_ROOT);
+ createEAttribute(dataContextRootEClass, DATA_CONTEXT_ROOT__LABEL);
+ createEReference(dataContextRootEClass, DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY);
+
+ constraintDescriptorEClass = createEClass(CONSTRAINT_DESCRIPTOR);
+ createEAttribute(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__NAME);
+ createEReference(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__DISPLAY);
+ createEAttribute(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__OVERRIDEABLE);
+ createEReference(constraintDescriptorEClass, CONSTRAINT_DESCRIPTOR__OVERRIDDEN_CONSTRAINTS);
+
+ simpleConstraintEClass = createEClass(SIMPLE_CONSTRAINT);
+ createEReference(simpleConstraintEClass, SIMPLE_CONSTRAINT__CONSTRAINT_TYPE);
+ createEReference(simpleConstraintEClass, SIMPLE_CONSTRAINT__PROPERTIES);
+
+ compositeConstraintEClass = createEClass(COMPOSITE_CONSTRAINT);
+ createEReference(compositeConstraintEClass, COMPOSITE_CONSTRAINT__CONSTRAINTS);
+
+ configPropertyEClass = createEClass(CONFIG_PROPERTY);
+ createEAttribute(configPropertyEClass, CONFIG_PROPERTY__NAME);
+
+ valuePropertyEClass = createEClass(VALUE_PROPERTY);
+ createEAttribute(valuePropertyEClass, VALUE_PROPERTY__VALUE);
+
+ referencePropertyEClass = createEClass(REFERENCE_PROPERTY);
+ createEReference(referencePropertyEClass, REFERENCE_PROPERTY__VALUE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+ UiPackage theUiPackage = (UiPackage)EPackage.Registry.INSTANCE.getEPackage(UiPackage.eNS_URI);
+ EnvironmentPackage theEnvironmentPackage = (EnvironmentPackage)EPackage.Registry.INSTANCE.getEPackage(EnvironmentPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ contextEClass.getESuperTypes().add(theEcorePackage.getEModelElement());
+ viewEClass.getESuperTypes().add(this.getDisplayUnit());
+ sectionEClass.getESuperTypes().add(this.getDisplayUnit());
+ unknownPropertyEClass.getESuperTypes().add(this.getProperty());
+ dataContextPackageEClass.getESuperTypes().add(this.getDataContextElement());
+ dataContextRootEClass.getESuperTypes().add(this.getDataContextPackage());
+ simpleConstraintEClass.getESuperTypes().add(this.getConstraintDescriptor());
+ compositeConstraintEClass.getESuperTypes().add(this.getConstraintDescriptor());
+ valuePropertyEClass.getESuperTypes().add(this.getConfigProperty());
+ referencePropertyEClass.getESuperTypes().add(this.getConfigProperty());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(contextEClass, Context.class, "Context", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getContext_Name(), ecorePackage.getEString(), "name", null, 1, 1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getContext_Dependencies(), this.getContext(), null, "dependencies", null, 0, -1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getContext_Tabs(), this.getTab(), null, "tabs", null, 0, -1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getContext_Views(), this.getView(), this.getView_Context(), "views", null, 0, -1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getContext_DataContexts(), this.getDataContextRoot(), null, "dataContexts", null, 0, -1, Context.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(displayUnitEClass, DisplayUnit.class, "DisplayUnit", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDisplayUnit_Constraints(), this.getConstraintDescriptor(), this.getConstraintDescriptor_Display(), "constraints", null, 0, -1, DisplayUnit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(tabEClass, Tab.class, "Tab", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getTab_Label(), ecorePackage.getEString(), "label", null, 1, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTab_Id(), ecorePackage.getEString(), "id", null, 1, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTab_Category(), ecorePackage.getEString(), "category", null, 0, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTab_Image(), ecorePackage.getEString(), "image", null, 0, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTab_AfterTab(), this.getTab(), null, "afterTab", null, 0, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getTab_Sections(), this.getSection(), this.getSection_Tab(), "sections", null, 0, -1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTab_Indented(), ecorePackage.getEBoolean(), "indented", "false", 1, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getTab_Priority(), ecorePackage.getEInt(), "priority", null, 0, 1, Tab.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(viewEClass, View.class, "View", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getView_Name(), ecorePackage.getEString(), "name", null, 1, 1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getView_Sections(), this.getSection(), null, "sections", null, 0, -1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getView_ElementMultiplicity(), ecorePackage.getEInt(), "elementMultiplicity", "1", 1, 1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getView_Context(), this.getContext(), this.getContext_Views(), "context", null, 1, 1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getView_AutomaticContext(), ecorePackage.getEBoolean(), "automaticContext", null, 1, 1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getView_Datacontexts(), this.getDataContextElement(), null, "datacontexts", null, 0, -1, View.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(sectionEClass, Section.class, "Section", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getSection_Name(), ecorePackage.getEString(), "name", null, 1, 1, Section.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSection_Tab(), this.getTab(), this.getTab_Sections(), "tab", null, 1, 1, Section.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getSection_SectionFile(), ecorePackage.getEString(), "sectionFile", null, 1, 1, Section.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSection_Widget(), theUiPackage.getCompositeWidget(), null, "widget", null, 1, 1, Section.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dataContextElementEClass, DataContextElement.class, "DataContextElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDataContextElement_Name(), ecorePackage.getEString(), "name", null, 1, 1, DataContextElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDataContextElement_Properties(), this.getProperty(), this.getProperty_ContextElement(), "properties", null, 0, -1, DataContextElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDataContextElement_Package(), this.getDataContextPackage(), this.getDataContextPackage_Elements(), "package", null, 0, 1, DataContextElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDataContextElement_Supertypes(), this.getDataContextElement(), null, "supertypes", null, 0, -1, DataContextElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(propertyEClass, Property.class, "Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getProperty_Name(), ecorePackage.getEString(), "name", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getProperty_Label(), ecorePackage.getEString(), "label", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getProperty_Type(), theEnvironmentPackage.getType(), "type", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getProperty_ContextElement(), this.getDataContextElement(), this.getDataContextElement_Properties(), "contextElement", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getProperty_Multiplicity(), ecorePackage.getEInt(), "multiplicity", "1", 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getProperty_Description(), ecorePackage.getEString(), "description", null, 0, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(unknownPropertyEClass, UnknownProperty.class, "UnknownProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(dataContextPackageEClass, DataContextPackage.class, "DataContextPackage", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDataContextPackage_Elements(), this.getDataContextElement(), this.getDataContextElement_Package(), "elements", null, 0, -1, DataContextPackage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(dataContextRootEClass, DataContextRoot.class, "DataContextRoot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getDataContextRoot_Label(), ecorePackage.getEString(), "label", null, 1, 1, DataContextRoot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDataContextRoot_ModelElementFactory(), theEnvironmentPackage.getModelElementFactoryDescriptor(), null, "modelElementFactory", null, 1, 1, DataContextRoot.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(constraintDescriptorEClass, ConstraintDescriptor.class, "ConstraintDescriptor", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getConstraintDescriptor_Name(), ecorePackage.getEString(), "name", null, 1, 1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getConstraintDescriptor_Display(), this.getDisplayUnit(), this.getDisplayUnit_Constraints(), "display", null, 0, 1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getConstraintDescriptor_Overrideable(), ecorePackage.getEBoolean(), "overrideable", "true", 1, 1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getConstraintDescriptor_OverriddenConstraints(), this.getSimpleConstraint(), null, "overriddenConstraints", null, 0, -1, ConstraintDescriptor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(simpleConstraintEClass, SimpleConstraint.class, "SimpleConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getSimpleConstraint_ConstraintType(), theEnvironmentPackage.getConstraintType(), null, "constraintType", null, 1, 1, SimpleConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSimpleConstraint_Properties(), this.getConfigProperty(), null, "properties", null, 0, -1, SimpleConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(compositeConstraintEClass, CompositeConstraint.class, "CompositeConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getCompositeConstraint_Constraints(), this.getSimpleConstraint(), null, "constraints", null, 0, -1, CompositeConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(configPropertyEClass, ConfigProperty.class, "ConfigProperty", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getConfigProperty_Name(), ecorePackage.getEString(), "name", null, 1, 1, ConfigProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(valuePropertyEClass, ValueProperty.class, "ValueProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getValueProperty_Value(), ecorePackage.getEString(), "value", null, 1, 1, ValueProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(referencePropertyEClass, ReferenceProperty.class, "ReferenceProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getReferenceProperty_Value(), ecorePackage.getEObject(), null, "value", null, 1, 1, ReferenceProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //ContextsPackageImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextElementImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextElementImpl.java
new file mode 100644
index 00000000000..e242bf01061
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextElementImpl.java
@@ -0,0 +1,387 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.properties.contexts.DataContextPackage;
+import org.eclipse.papyrus.properties.contexts.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Context Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl#getProperties <em>Properties</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl#getPackage <em>Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextElementImpl#getSupertypes <em>Supertypes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DataContextElementImpl extends EObjectImpl implements DataContextElement {
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProperties()
+ * @generated
+ * @ordered
+ */
+ protected EList<Property> properties;
+
+ /**
+ * The cached value of the '{@link #getSupertypes() <em>Supertypes</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSupertypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<DataContextElement> supertypes;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DataContextElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.DATA_CONTEXT_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.DATA_CONTEXT_ELEMENT__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Property> getProperties() {
+ if (properties == null) {
+ properties = new EObjectContainmentWithInverseEList<Property>(Property.class, this, ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES, ContextsPackage.PROPERTY__CONTEXT_ELEMENT);
+ }
+ return properties;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataContextPackage getPackage() {
+ if (eContainerFeatureID() != ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE) return null;
+ return (DataContextPackage)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetPackage(DataContextPackage newPackage, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newPackage, ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPackage(DataContextPackage newPackage) {
+ if (newPackage != eInternalContainer() || (eContainerFeatureID() != ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE && newPackage != null)) {
+ if (EcoreUtil.isAncestor(this, newPackage))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newPackage != null)
+ msgs = ((InternalEObject)newPackage).eInverseAdd(this, ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS, DataContextPackage.class, msgs);
+ msgs = basicSetPackage(newPackage, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE, newPackage, newPackage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<DataContextElement> getSupertypes() {
+ if (supertypes == null) {
+ supertypes = new EObjectResolvingEList<DataContextElement>(DataContextElement.class, this, ContextsPackage.DATA_CONTEXT_ELEMENT__SUPERTYPES);
+ }
+ return supertypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getProperties()).basicAdd(otherEnd, msgs);
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetPackage((DataContextPackage)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES:
+ return ((InternalEList<?>)getProperties()).basicRemove(otherEnd, msgs);
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ return basicSetPackage(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ return eInternalContainer().eInverseRemove(this, ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS, DataContextPackage.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__NAME:
+ return getName();
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES:
+ return getProperties();
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ return getPackage();
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__SUPERTYPES:
+ return getSupertypes();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__NAME:
+ setName((String)newValue);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES:
+ getProperties().clear();
+ getProperties().addAll((Collection<? extends Property>)newValue);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ setPackage((DataContextPackage)newValue);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__SUPERTYPES:
+ getSupertypes().clear();
+ getSupertypes().addAll((Collection<? extends DataContextElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES:
+ getProperties().clear();
+ return;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ setPackage((DataContextPackage)null);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__SUPERTYPES:
+ getSupertypes().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES:
+ return properties != null && !properties.isEmpty();
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE:
+ return getPackage() != null;
+ case ContextsPackage.DATA_CONTEXT_ELEMENT__SUPERTYPES:
+ return supertypes != null && !supertypes.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if(object == null)
+ return false;
+
+ if(object == this)
+ return true;
+
+ if(object.getClass() == getClass()) {
+ DataContextElement element = (DataContextElement)object;
+ if(getName() == null) {
+ if(element.getName() != null) {
+ return false;
+ }
+ } else {
+ if(!getName().equals(element.getName())) {
+ return false;
+ }
+ }
+
+ if(getPackage() == null) {
+ if(element.getPackage() != null) {
+ return false;
+ }
+ } else {
+ if(!getPackage().equals(element.getPackage())) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ return false;
+ }
+
+} //DataContextElementImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextPackageImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextPackageImpl.java
new file mode 100644
index 00000000000..c677653826b
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextPackageImpl.java
@@ -0,0 +1,174 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.properties.contexts.DataContextPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Context Package</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextPackageImpl#getElements <em>Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DataContextPackageImpl extends DataContextElementImpl implements DataContextPackage {
+ /**
+ * The cached value of the '{@link #getElements() <em>Elements</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElements()
+ * @generated
+ * @ordered
+ */
+ protected EList<DataContextElement> elements;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DataContextPackageImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.DATA_CONTEXT_PACKAGE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<DataContextElement> getElements() {
+ if (elements == null) {
+ elements = new EObjectContainmentWithInverseEList<DataContextElement>(DataContextElement.class, this, ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS, ContextsPackage.DATA_CONTEXT_ELEMENT__PACKAGE);
+ }
+ return elements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getElements()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS:
+ return ((InternalEList<?>)getElements()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS:
+ return getElements();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS:
+ getElements().clear();
+ getElements().addAll((Collection<? extends DataContextElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS:
+ getElements().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_PACKAGE__ELEMENTS:
+ return elements != null && !elements.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DataContextPackageImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextRootImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextRootImpl.java
new file mode 100644
index 00000000000..56445f6cc3d
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DataContextRootImpl.java
@@ -0,0 +1,234 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextRoot;
+
+import org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Context Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextRootImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DataContextRootImpl#getModelElementFactory <em>Model Element Factory</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DataContextRootImpl extends DataContextPackageImpl implements DataContextRoot {
+ /**
+ * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LABEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected String label = LABEL_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getModelElementFactory() <em>Model Element Factory</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModelElementFactory()
+ * @generated
+ * @ordered
+ */
+ protected ModelElementFactoryDescriptor modelElementFactory;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DataContextRootImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.DATA_CONTEXT_ROOT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLabel() {
+ return label;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLabel(String newLabel) {
+ String oldLabel = label;
+ label = newLabel;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.DATA_CONTEXT_ROOT__LABEL, oldLabel, label));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelElementFactoryDescriptor getModelElementFactory() {
+ if (modelElementFactory != null && modelElementFactory.eIsProxy()) {
+ InternalEObject oldModelElementFactory = (InternalEObject)modelElementFactory;
+ modelElementFactory = (ModelElementFactoryDescriptor)eResolveProxy(oldModelElementFactory);
+ if (modelElementFactory != oldModelElementFactory) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ContextsPackage.DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY, oldModelElementFactory, modelElementFactory));
+ }
+ }
+ return modelElementFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelElementFactoryDescriptor basicGetModelElementFactory() {
+ return modelElementFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setModelElementFactory(ModelElementFactoryDescriptor newModelElementFactory) {
+ ModelElementFactoryDescriptor oldModelElementFactory = modelElementFactory;
+ modelElementFactory = newModelElementFactory;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY, oldModelElementFactory, modelElementFactory));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ROOT__LABEL:
+ return getLabel();
+ case ContextsPackage.DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY:
+ if (resolve) return getModelElementFactory();
+ return basicGetModelElementFactory();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ROOT__LABEL:
+ setLabel((String)newValue);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY:
+ setModelElementFactory((ModelElementFactoryDescriptor)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ROOT__LABEL:
+ setLabel(LABEL_EDEFAULT);
+ return;
+ case ContextsPackage.DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY:
+ setModelElementFactory((ModelElementFactoryDescriptor)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DATA_CONTEXT_ROOT__LABEL:
+ return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+ case ContextsPackage.DATA_CONTEXT_ROOT__MODEL_ELEMENT_FACTORY:
+ return modelElementFactory != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (label: ");
+ result.append(label);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DataContextRootImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DisplayUnitImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DisplayUnitImpl.java
new file mode 100644
index 00000000000..b5bdb4af823
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/DisplayUnitImpl.java
@@ -0,0 +1,176 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.ConstraintDescriptor;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DisplayUnit;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Display Unit</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.DisplayUnitImpl#getConstraints <em>Constraints</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class DisplayUnitImpl extends EObjectImpl implements DisplayUnit {
+ /**
+ * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConstraints()
+ * @generated
+ * @ordered
+ */
+ protected EList<ConstraintDescriptor> constraints;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DisplayUnitImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.DISPLAY_UNIT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ConstraintDescriptor> getConstraints() {
+ if (constraints == null) {
+ constraints = new EObjectContainmentWithInverseEList<ConstraintDescriptor>(ConstraintDescriptor.class, this, ContextsPackage.DISPLAY_UNIT__CONSTRAINTS, ContextsPackage.CONSTRAINT_DESCRIPTOR__DISPLAY);
+ }
+ return constraints;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getConstraints()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return ((InternalEList<?>)getConstraints()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return getConstraints();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ getConstraints().clear();
+ getConstraints().addAll((Collection<? extends ConstraintDescriptor>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ getConstraints().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.DISPLAY_UNIT__CONSTRAINTS:
+ return constraints != null && !constraints.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DisplayUnitImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/PropertyImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/PropertyImpl.java
new file mode 100644
index 00000000000..2898c2d57f1
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/PropertyImpl.java
@@ -0,0 +1,521 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.properties.contexts.Property;
+import org.eclipse.papyrus.properties.environment.Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl#getContextElement <em>Context Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl#getMultiplicity <em>Multiplicity</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.PropertyImpl#getDescription <em>Description</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class PropertyImpl extends EObjectImpl implements Property {
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LABEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected String label = LABEL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final Type TYPE_EDEFAULT = Type.STRING;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected Type type = TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMultiplicity()
+ * @generated
+ * @ordered
+ */
+ protected static final int MULTIPLICITY_EDEFAULT = 1;
+
+ /**
+ * The cached value of the '{@link #getMultiplicity() <em>Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMultiplicity()
+ * @generated
+ * @ordered
+ */
+ protected int multiplicity = MULTIPLICITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected String description = DESCRIPTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.PROPERTY__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLabel() {
+ return label;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLabel(String newLabel) {
+ String oldLabel = label;
+ label = newLabel;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.PROPERTY__LABEL, oldLabel, label));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Type getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(Type newType) {
+ Type oldType = type;
+ type = newType == null ? TYPE_EDEFAULT : newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.PROPERTY__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DataContextElement getContextElement() {
+ if (eContainerFeatureID() != ContextsPackage.PROPERTY__CONTEXT_ELEMENT) return null;
+ return (DataContextElement)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetContextElement(DataContextElement newContextElement, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newContextElement, ContextsPackage.PROPERTY__CONTEXT_ELEMENT, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContextElement(DataContextElement newContextElement) {
+ if (newContextElement != eInternalContainer() || (eContainerFeatureID() != ContextsPackage.PROPERTY__CONTEXT_ELEMENT && newContextElement != null)) {
+ if (EcoreUtil.isAncestor(this, newContextElement))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newContextElement != null)
+ msgs = ((InternalEObject)newContextElement).eInverseAdd(this, ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES, DataContextElement.class, msgs);
+ msgs = basicSetContextElement(newContextElement, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.PROPERTY__CONTEXT_ELEMENT, newContextElement, newContextElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getMultiplicity() {
+ return multiplicity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMultiplicity(int newMultiplicity) {
+ int oldMultiplicity = multiplicity;
+ multiplicity = newMultiplicity;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.PROPERTY__MULTIPLICITY, oldMultiplicity, multiplicity));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDescription(String newDescription) {
+ String oldDescription = description;
+ description = newDescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.PROPERTY__DESCRIPTION, oldDescription, description));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetContextElement((DataContextElement)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ return basicSetContextElement(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ return eInternalContainer().eInverseRemove(this, ContextsPackage.DATA_CONTEXT_ELEMENT__PROPERTIES, DataContextElement.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.PROPERTY__NAME:
+ return getName();
+ case ContextsPackage.PROPERTY__LABEL:
+ return getLabel();
+ case ContextsPackage.PROPERTY__TYPE:
+ return getType();
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ return getContextElement();
+ case ContextsPackage.PROPERTY__MULTIPLICITY:
+ return getMultiplicity();
+ case ContextsPackage.PROPERTY__DESCRIPTION:
+ return getDescription();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.PROPERTY__NAME:
+ setName((String)newValue);
+ return;
+ case ContextsPackage.PROPERTY__LABEL:
+ setLabel((String)newValue);
+ return;
+ case ContextsPackage.PROPERTY__TYPE:
+ setType((Type)newValue);
+ return;
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ setContextElement((DataContextElement)newValue);
+ return;
+ case ContextsPackage.PROPERTY__MULTIPLICITY:
+ setMultiplicity((Integer)newValue);
+ return;
+ case ContextsPackage.PROPERTY__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.PROPERTY__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ContextsPackage.PROPERTY__LABEL:
+ setLabel(LABEL_EDEFAULT);
+ return;
+ case ContextsPackage.PROPERTY__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ setContextElement((DataContextElement)null);
+ return;
+ case ContextsPackage.PROPERTY__MULTIPLICITY:
+ setMultiplicity(MULTIPLICITY_EDEFAULT);
+ return;
+ case ContextsPackage.PROPERTY__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.PROPERTY__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ContextsPackage.PROPERTY__LABEL:
+ return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+ case ContextsPackage.PROPERTY__TYPE:
+ return type != TYPE_EDEFAULT;
+ case ContextsPackage.PROPERTY__CONTEXT_ELEMENT:
+ return getContextElement() != null;
+ case ContextsPackage.PROPERTY__MULTIPLICITY:
+ return multiplicity != MULTIPLICITY_EDEFAULT;
+ case ContextsPackage.PROPERTY__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(", label: ");
+ result.append(label);
+ result.append(", type: ");
+ result.append(type);
+ result.append(", multiplicity: ");
+ result.append(multiplicity);
+ result.append(", description: ");
+ result.append(description);
+ result.append(')');
+ return result.toString();
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if(object == null)
+ return false;
+
+ if(object == this)
+ return true;
+
+ if(object instanceof Property) {
+ Property property = (Property)object;
+ if(getName() == null || property.getName() == null) {
+ return false;
+ }
+ if(!getName().equals(property.getName())) {
+ return false;
+ }
+
+ if(getMultiplicity() != property.getMultiplicity()) {
+ return false;
+ }
+
+ if(!getType().equals(property.getType())) {
+ return false;
+ }
+ if(!getContextElement().equals(property.getContextElement())) {
+ return false;
+ }
+
+ return true;
+ }
+
+ return false;
+ }
+
+} //PropertyImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ReferencePropertyImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ReferencePropertyImpl.java
new file mode 100644
index 00000000000..f62a06d88d5
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ReferencePropertyImpl.java
@@ -0,0 +1,165 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.ReferenceProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Reference Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ReferencePropertyImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ReferencePropertyImpl extends ConfigPropertyImpl implements ReferenceProperty {
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected EObject value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ReferencePropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.REFERENCE_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getValue() {
+ if (value != null && value.eIsProxy()) {
+ InternalEObject oldValue = (InternalEObject)value;
+ value = eResolveProxy(oldValue);
+ if (value != oldValue) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ContextsPackage.REFERENCE_PROPERTY__VALUE, oldValue, value));
+ }
+ }
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject basicGetValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(EObject newValue) {
+ EObject oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.REFERENCE_PROPERTY__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.REFERENCE_PROPERTY__VALUE:
+ if (resolve) return getValue();
+ return basicGetValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.REFERENCE_PROPERTY__VALUE:
+ setValue((EObject)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.REFERENCE_PROPERTY__VALUE:
+ setValue((EObject)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.REFERENCE_PROPERTY__VALUE:
+ return value != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ReferencePropertyImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SectionImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SectionImpl.java
new file mode 100644
index 00000000000..4827c6c6998
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SectionImpl.java
@@ -0,0 +1,388 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.Section;
+import org.eclipse.papyrus.properties.contexts.Tab;
+
+import org.eclipse.papyrus.properties.ui.CompositeWidget;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Section</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.SectionImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.SectionImpl#getTab <em>Tab</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.SectionImpl#getSectionFile <em>Section File</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.SectionImpl#getWidget <em>Widget</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SectionImpl extends DisplayUnitImpl implements Section {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSectionFile() <em>Section File</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSectionFile()
+ * @generated
+ * @ordered
+ */
+ protected static final String SECTION_FILE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSectionFile() <em>Section File</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSectionFile()
+ * @generated
+ * @ordered
+ */
+ protected String sectionFile = SECTION_FILE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getWidget() <em>Widget</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWidget()
+ * @generated
+ * @ordered
+ */
+ protected CompositeWidget widget;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SectionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.SECTION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.SECTION__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Tab getTab() {
+ if (eContainerFeatureID() != ContextsPackage.SECTION__TAB) return null;
+ return (Tab)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetTab(Tab newTab, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newTab, ContextsPackage.SECTION__TAB, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setTab(Tab newTab) {
+ if (newTab != eInternalContainer() || (eContainerFeatureID() != ContextsPackage.SECTION__TAB && newTab != null)) {
+ if (EcoreUtil.isAncestor(this, newTab))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newTab != null)
+ msgs = ((InternalEObject)newTab).eInverseAdd(this, ContextsPackage.TAB__SECTIONS, Tab.class, msgs);
+ msgs = basicSetTab(newTab, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.SECTION__TAB, newTab, newTab));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSectionFile() {
+ return sectionFile;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSectionFile(String newSectionFile) {
+ String oldSectionFile = sectionFile;
+ sectionFile = newSectionFile;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.SECTION__SECTION_FILE, oldSectionFile, sectionFile));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CompositeWidget getWidget() {
+ if (widget != null && widget.eIsProxy()) {
+ InternalEObject oldWidget = (InternalEObject)widget;
+ widget = (CompositeWidget)eResolveProxy(oldWidget);
+ if (widget != oldWidget) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ContextsPackage.SECTION__WIDGET, oldWidget, widget));
+ }
+ }
+ return widget;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CompositeWidget basicGetWidget() {
+ return widget;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setWidget(CompositeWidget newWidget) {
+ CompositeWidget oldWidget = widget;
+ widget = newWidget;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.SECTION__WIDGET, oldWidget, widget));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.SECTION__TAB:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetTab((Tab)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.SECTION__TAB:
+ return basicSetTab(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case ContextsPackage.SECTION__TAB:
+ return eInternalContainer().eInverseRemove(this, ContextsPackage.TAB__SECTIONS, Tab.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.SECTION__NAME:
+ return getName();
+ case ContextsPackage.SECTION__TAB:
+ return getTab();
+ case ContextsPackage.SECTION__SECTION_FILE:
+ return getSectionFile();
+ case ContextsPackage.SECTION__WIDGET:
+ if (resolve) return getWidget();
+ return basicGetWidget();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.SECTION__NAME:
+ setName((String)newValue);
+ return;
+ case ContextsPackage.SECTION__TAB:
+ setTab((Tab)newValue);
+ return;
+ case ContextsPackage.SECTION__SECTION_FILE:
+ setSectionFile((String)newValue);
+ return;
+ case ContextsPackage.SECTION__WIDGET:
+ setWidget((CompositeWidget)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.SECTION__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ContextsPackage.SECTION__TAB:
+ setTab((Tab)null);
+ return;
+ case ContextsPackage.SECTION__SECTION_FILE:
+ setSectionFile(SECTION_FILE_EDEFAULT);
+ return;
+ case ContextsPackage.SECTION__WIDGET:
+ setWidget((CompositeWidget)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.SECTION__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ContextsPackage.SECTION__TAB:
+ return getTab() != null;
+ case ContextsPackage.SECTION__SECTION_FILE:
+ return SECTION_FILE_EDEFAULT == null ? sectionFile != null : !SECTION_FILE_EDEFAULT.equals(sectionFile);
+ case ContextsPackage.SECTION__WIDGET:
+ return widget != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(", sectionFile: ");
+ result.append(sectionFile);
+ result.append(')');
+ return result.toString();
+ }
+
+} //SectionImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SimpleConstraintImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SimpleConstraintImpl.java
new file mode 100644
index 00000000000..c8453ef4d8e
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/SimpleConstraintImpl.java
@@ -0,0 +1,224 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.ConfigProperty;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.SimpleConstraint;
+
+import org.eclipse.papyrus.properties.environment.ConstraintType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Simple Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.SimpleConstraintImpl#getConstraintType <em>Constraint Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.SimpleConstraintImpl#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SimpleConstraintImpl extends ConstraintDescriptorImpl implements SimpleConstraint {
+ /**
+ * The cached value of the '{@link #getConstraintType() <em>Constraint Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConstraintType()
+ * @generated
+ * @ordered
+ */
+ protected ConstraintType constraintType;
+
+ /**
+ * The cached value of the '{@link #getProperties() <em>Properties</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getProperties()
+ * @generated
+ * @ordered
+ */
+ protected EList<ConfigProperty> properties;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SimpleConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.SIMPLE_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintType getConstraintType() {
+ if (constraintType != null && constraintType.eIsProxy()) {
+ InternalEObject oldConstraintType = (InternalEObject)constraintType;
+ constraintType = (ConstraintType)eResolveProxy(oldConstraintType);
+ if (constraintType != oldConstraintType) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ContextsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE, oldConstraintType, constraintType));
+ }
+ }
+ return constraintType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintType basicGetConstraintType() {
+ return constraintType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConstraintType(ConstraintType newConstraintType) {
+ ConstraintType oldConstraintType = constraintType;
+ constraintType = newConstraintType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE, oldConstraintType, constraintType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ConfigProperty> getProperties() {
+ if (properties == null) {
+ properties = new EObjectContainmentEList<ConfigProperty>(ConfigProperty.class, this, ContextsPackage.SIMPLE_CONSTRAINT__PROPERTIES);
+ }
+ return properties;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ return ((InternalEList<?>)getProperties()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ if (resolve) return getConstraintType();
+ return basicGetConstraintType();
+ case ContextsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ return getProperties();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ setConstraintType((ConstraintType)newValue);
+ return;
+ case ContextsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ getProperties().clear();
+ getProperties().addAll((Collection<? extends ConfigProperty>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ setConstraintType((ConstraintType)null);
+ return;
+ case ContextsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ getProperties().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.SIMPLE_CONSTRAINT__CONSTRAINT_TYPE:
+ return constraintType != null;
+ case ContextsPackage.SIMPLE_CONSTRAINT__PROPERTIES:
+ return properties != null && !properties.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //SimpleConstraintImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/TabImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/TabImpl.java
new file mode 100644
index 00000000000..3451d6c5a2e
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/TabImpl.java
@@ -0,0 +1,625 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.Section;
+import org.eclipse.papyrus.properties.contexts.Tab;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Tab</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getId <em>Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getCategory <em>Category</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getImage <em>Image</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getAfterTab <em>After Tab</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getSections <em>Sections</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#isIndented <em>Indented</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.TabImpl#getPriority <em>Priority</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class TabImpl extends EObjectImpl implements Tab {
+
+ /**
+ * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LABEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected String label = LABEL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getId() <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected static final String ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getId()
+ * @generated
+ * @ordered
+ */
+ protected String id = ID_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategory()
+ * @generated
+ * @ordered
+ */
+ protected static final String CATEGORY_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategory()
+ * @generated
+ * @ordered
+ */
+ protected String category = CATEGORY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getImage() <em>Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImage()
+ * @generated
+ * @ordered
+ */
+ protected static final String IMAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getImage() <em>Image</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImage()
+ * @generated
+ * @ordered
+ */
+ protected String image = IMAGE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getAfterTab() <em>After Tab</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAfterTab()
+ * @generated
+ * @ordered
+ */
+ protected Tab afterTab;
+
+ /**
+ * The cached value of the '{@link #getSections() <em>Sections</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSections()
+ * @generated
+ * @ordered
+ */
+ protected EList<Section> sections;
+
+ /**
+ * The default value of the '{@link #isIndented() <em>Indented</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isIndented()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean INDENTED_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isIndented() <em>Indented</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isIndented()
+ * @generated
+ * @ordered
+ */
+ protected boolean indented = INDENTED_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getPriority() <em>Priority</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPriority()
+ * @generated
+ * @ordered
+ */
+ protected static final int PRIORITY_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getPriority() <em>Priority</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPriority()
+ * @generated
+ * @ordered
+ */
+ protected int priority = PRIORITY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TabImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.TAB;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLabel() {
+ return label;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLabel(String newLabel) {
+ String oldLabel = label;
+ label = newLabel;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__LABEL, oldLabel, label));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getId() {
+ return id;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setId(String newId) {
+ String oldId = id;
+ id = newId;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__ID, oldId, id));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getCategory() {
+ return category;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCategory(String newCategory) {
+ String oldCategory = category;
+ category = newCategory;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__CATEGORY, oldCategory, category));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getImage() {
+ return image;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setImage(String newImage) {
+ String oldImage = image;
+ image = newImage;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__IMAGE, oldImage, image));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Tab getAfterTab() {
+ if (afterTab != null && afterTab.eIsProxy()) {
+ InternalEObject oldAfterTab = (InternalEObject)afterTab;
+ afterTab = (Tab)eResolveProxy(oldAfterTab);
+ if (afterTab != oldAfterTab) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, ContextsPackage.TAB__AFTER_TAB, oldAfterTab, afterTab));
+ }
+ }
+ return afterTab;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Tab basicGetAfterTab() {
+ return afterTab;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAfterTab(Tab newAfterTab) {
+ Tab oldAfterTab = afterTab;
+ afterTab = newAfterTab;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__AFTER_TAB, oldAfterTab, afterTab));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Section> getSections() {
+ if (sections == null) {
+ sections = new EObjectContainmentWithInverseEList<Section>(Section.class, this, ContextsPackage.TAB__SECTIONS, ContextsPackage.SECTION__TAB);
+ }
+ return sections;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isIndented() {
+ return indented;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIndented(boolean newIndented) {
+ boolean oldIndented = indented;
+ indented = newIndented;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__INDENTED, oldIndented, indented));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getPriority() {
+ return priority;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setPriority(int newPriority) {
+ int oldPriority = priority;
+ priority = newPriority;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.TAB__PRIORITY, oldPriority, priority));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.TAB__SECTIONS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getSections()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.TAB__SECTIONS:
+ return ((InternalEList<?>)getSections()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.TAB__LABEL:
+ return getLabel();
+ case ContextsPackage.TAB__ID:
+ return getId();
+ case ContextsPackage.TAB__CATEGORY:
+ return getCategory();
+ case ContextsPackage.TAB__IMAGE:
+ return getImage();
+ case ContextsPackage.TAB__AFTER_TAB:
+ if (resolve) return getAfterTab();
+ return basicGetAfterTab();
+ case ContextsPackage.TAB__SECTIONS:
+ return getSections();
+ case ContextsPackage.TAB__INDENTED:
+ return isIndented();
+ case ContextsPackage.TAB__PRIORITY:
+ return getPriority();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.TAB__LABEL:
+ setLabel((String)newValue);
+ return;
+ case ContextsPackage.TAB__ID:
+ setId((String)newValue);
+ return;
+ case ContextsPackage.TAB__CATEGORY:
+ setCategory((String)newValue);
+ return;
+ case ContextsPackage.TAB__IMAGE:
+ setImage((String)newValue);
+ return;
+ case ContextsPackage.TAB__AFTER_TAB:
+ setAfterTab((Tab)newValue);
+ return;
+ case ContextsPackage.TAB__SECTIONS:
+ getSections().clear();
+ getSections().addAll((Collection<? extends Section>)newValue);
+ return;
+ case ContextsPackage.TAB__INDENTED:
+ setIndented((Boolean)newValue);
+ return;
+ case ContextsPackage.TAB__PRIORITY:
+ setPriority((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.TAB__LABEL:
+ setLabel(LABEL_EDEFAULT);
+ return;
+ case ContextsPackage.TAB__ID:
+ setId(ID_EDEFAULT);
+ return;
+ case ContextsPackage.TAB__CATEGORY:
+ setCategory(CATEGORY_EDEFAULT);
+ return;
+ case ContextsPackage.TAB__IMAGE:
+ setImage(IMAGE_EDEFAULT);
+ return;
+ case ContextsPackage.TAB__AFTER_TAB:
+ setAfterTab((Tab)null);
+ return;
+ case ContextsPackage.TAB__SECTIONS:
+ getSections().clear();
+ return;
+ case ContextsPackage.TAB__INDENTED:
+ setIndented(INDENTED_EDEFAULT);
+ return;
+ case ContextsPackage.TAB__PRIORITY:
+ setPriority(PRIORITY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.TAB__LABEL:
+ return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+ case ContextsPackage.TAB__ID:
+ return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
+ case ContextsPackage.TAB__CATEGORY:
+ return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+ case ContextsPackage.TAB__IMAGE:
+ return IMAGE_EDEFAULT == null ? image != null : !IMAGE_EDEFAULT.equals(image);
+ case ContextsPackage.TAB__AFTER_TAB:
+ return afterTab != null;
+ case ContextsPackage.TAB__SECTIONS:
+ return sections != null && !sections.isEmpty();
+ case ContextsPackage.TAB__INDENTED:
+ return indented != INDENTED_EDEFAULT;
+ case ContextsPackage.TAB__PRIORITY:
+ return priority != PRIORITY_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (label: ");
+ result.append(label);
+ result.append(", id: ");
+ result.append(id);
+ result.append(", category: ");
+ result.append(category);
+ result.append(", image: ");
+ result.append(image);
+ result.append(", indented: ");
+ result.append(indented);
+ result.append(", priority: ");
+ result.append(priority);
+ result.append(')');
+ return result.toString();
+ }
+
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ @Override
+ public boolean equals(Object other) {
+ if(other == null)
+ return false;
+ if(this == other)
+ return true;
+
+ if(other instanceof Tab) {
+ Tab tab = (Tab)other;
+ return compareString(tab.getCategory(), getCategory()) && compareString(tab.getId(), getId());
+ }
+
+ return false;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ @Override
+ public int hashCode() {
+ if(getCategory() == null) {
+ if(getId() == null) {
+ return 0;
+ }
+ return getId().hashCode();
+ }
+
+ return 7 * getCategory().hashCode() + getId().hashCode();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ private boolean compareString(String s1, String s2) {
+ if(s1 == null || s1.equals("")) {
+ return s2 == null || s2.equals("");
+ }
+ return s1.equals(s2);
+ }
+
+} //TabImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/UnknownPropertyImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/UnknownPropertyImpl.java
new file mode 100644
index 00000000000..1354a7601bc
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/UnknownPropertyImpl.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.UnknownProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Unknown Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class UnknownPropertyImpl extends PropertyImpl implements UnknownProperty {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected UnknownPropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.UNKNOWN_PROPERTY;
+ }
+
+} //UnknownPropertyImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ValuePropertyImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ValuePropertyImpl.java
new file mode 100644
index 00000000000..60a16ad63ce
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ValuePropertyImpl.java
@@ -0,0 +1,171 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.ValueProperty;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Value Property</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ValuePropertyImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ValuePropertyImpl extends ConfigPropertyImpl implements ValueProperty {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final String VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected String value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ValuePropertyImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.VALUE_PROPERTY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(String newValue) {
+ String oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.VALUE_PROPERTY__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.VALUE_PROPERTY__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.VALUE_PROPERTY__VALUE:
+ setValue((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.VALUE_PROPERTY__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.VALUE_PROPERTY__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: ");
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ValuePropertyImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ViewImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ViewImpl.java
new file mode 100644
index 00000000000..a5f0d02143f
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/impl/ViewImpl.java
@@ -0,0 +1,456 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.properties.contexts.Context;
+import org.eclipse.papyrus.properties.contexts.ContextsPackage;
+import org.eclipse.papyrus.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.properties.contexts.Section;
+import org.eclipse.papyrus.properties.contexts.View;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>View</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl#getSections <em>Sections</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl#getElementMultiplicity <em>Element Multiplicity</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl#isAutomaticContext <em>Automatic Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.contexts.impl.ViewImpl#getDatacontexts <em>Datacontexts</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ViewImpl extends DisplayUnitImpl implements View {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getSections() <em>Sections</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSections()
+ * @generated
+ * @ordered
+ */
+ protected EList<Section> sections;
+
+ /**
+ * The default value of the '{@link #getElementMultiplicity() <em>Element Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElementMultiplicity()
+ * @generated
+ * @ordered
+ */
+ protected static final int ELEMENT_MULTIPLICITY_EDEFAULT = 1;
+
+ /**
+ * The cached value of the '{@link #getElementMultiplicity() <em>Element Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElementMultiplicity()
+ * @generated
+ * @ordered
+ */
+ protected int elementMultiplicity = ELEMENT_MULTIPLICITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isAutomaticContext() <em>Automatic Context</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isAutomaticContext()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean AUTOMATIC_CONTEXT_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isAutomaticContext() <em>Automatic Context</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isAutomaticContext()
+ * @generated
+ * @ordered
+ */
+ protected boolean automaticContext = AUTOMATIC_CONTEXT_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getDatacontexts() <em>Datacontexts</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDatacontexts()
+ * @generated
+ * @ordered
+ */
+ protected EList<DataContextElement> datacontexts;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ViewImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ContextsPackage.Literals.VIEW;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.VIEW__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Section> getSections() {
+ if (sections == null) {
+ sections = new EObjectResolvingEList<Section>(Section.class, this, ContextsPackage.VIEW__SECTIONS);
+ }
+ return sections;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getElementMultiplicity() {
+ return elementMultiplicity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setElementMultiplicity(int newElementMultiplicity) {
+ int oldElementMultiplicity = elementMultiplicity;
+ elementMultiplicity = newElementMultiplicity;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.VIEW__ELEMENT_MULTIPLICITY, oldElementMultiplicity, elementMultiplicity));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Context getContext() {
+ if (eContainerFeatureID() != ContextsPackage.VIEW__CONTEXT) return null;
+ return (Context)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetContext(Context newContext, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newContext, ContextsPackage.VIEW__CONTEXT, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContext(Context newContext) {
+ if (newContext != eInternalContainer() || (eContainerFeatureID() != ContextsPackage.VIEW__CONTEXT && newContext != null)) {
+ if (EcoreUtil.isAncestor(this, newContext))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newContext != null)
+ msgs = ((InternalEObject)newContext).eInverseAdd(this, ContextsPackage.CONTEXT__VIEWS, Context.class, msgs);
+ msgs = basicSetContext(newContext, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.VIEW__CONTEXT, newContext, newContext));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isAutomaticContext() {
+ return automaticContext;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAutomaticContext(boolean newAutomaticContext) {
+ boolean oldAutomaticContext = automaticContext;
+ automaticContext = newAutomaticContext;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ContextsPackage.VIEW__AUTOMATIC_CONTEXT, oldAutomaticContext, automaticContext));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<DataContextElement> getDatacontexts() {
+ if (datacontexts == null) {
+ datacontexts = new EObjectResolvingEList<DataContextElement>(DataContextElement.class, this, ContextsPackage.VIEW__DATACONTEXTS);
+ }
+ return datacontexts;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.VIEW__CONTEXT:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetContext((Context)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ContextsPackage.VIEW__CONTEXT:
+ return basicSetContext(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case ContextsPackage.VIEW__CONTEXT:
+ return eInternalContainer().eInverseRemove(this, ContextsPackage.CONTEXT__VIEWS, Context.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ContextsPackage.VIEW__NAME:
+ return getName();
+ case ContextsPackage.VIEW__SECTIONS:
+ return getSections();
+ case ContextsPackage.VIEW__ELEMENT_MULTIPLICITY:
+ return getElementMultiplicity();
+ case ContextsPackage.VIEW__CONTEXT:
+ return getContext();
+ case ContextsPackage.VIEW__AUTOMATIC_CONTEXT:
+ return isAutomaticContext();
+ case ContextsPackage.VIEW__DATACONTEXTS:
+ return getDatacontexts();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ContextsPackage.VIEW__NAME:
+ setName((String)newValue);
+ return;
+ case ContextsPackage.VIEW__SECTIONS:
+ getSections().clear();
+ getSections().addAll((Collection<? extends Section>)newValue);
+ return;
+ case ContextsPackage.VIEW__ELEMENT_MULTIPLICITY:
+ setElementMultiplicity((Integer)newValue);
+ return;
+ case ContextsPackage.VIEW__CONTEXT:
+ setContext((Context)newValue);
+ return;
+ case ContextsPackage.VIEW__AUTOMATIC_CONTEXT:
+ setAutomaticContext((Boolean)newValue);
+ return;
+ case ContextsPackage.VIEW__DATACONTEXTS:
+ getDatacontexts().clear();
+ getDatacontexts().addAll((Collection<? extends DataContextElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.VIEW__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case ContextsPackage.VIEW__SECTIONS:
+ getSections().clear();
+ return;
+ case ContextsPackage.VIEW__ELEMENT_MULTIPLICITY:
+ setElementMultiplicity(ELEMENT_MULTIPLICITY_EDEFAULT);
+ return;
+ case ContextsPackage.VIEW__CONTEXT:
+ setContext((Context)null);
+ return;
+ case ContextsPackage.VIEW__AUTOMATIC_CONTEXT:
+ setAutomaticContext(AUTOMATIC_CONTEXT_EDEFAULT);
+ return;
+ case ContextsPackage.VIEW__DATACONTEXTS:
+ getDatacontexts().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ContextsPackage.VIEW__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case ContextsPackage.VIEW__SECTIONS:
+ return sections != null && !sections.isEmpty();
+ case ContextsPackage.VIEW__ELEMENT_MULTIPLICITY:
+ return elementMultiplicity != ELEMENT_MULTIPLICITY_EDEFAULT;
+ case ContextsPackage.VIEW__CONTEXT:
+ return getContext() != null;
+ case ContextsPackage.VIEW__AUTOMATIC_CONTEXT:
+ return automaticContext != AUTOMATIC_CONTEXT_EDEFAULT;
+ case ContextsPackage.VIEW__DATACONTEXTS:
+ return datacontexts != null && !datacontexts.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(", elementMultiplicity: ");
+ result.append(elementMultiplicity);
+ result.append(", automaticContext: ");
+ result.append(automaticContext);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ViewImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsAdapterFactory.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsAdapterFactory.java
new file mode 100644
index 00000000000..3474dccc926
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsAdapterFactory.java
@@ -0,0 +1,418 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.properties.contexts.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage
+ * @generated
+ */
+public class ContextsAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ContextsPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ContextsAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ContextsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ContextsSwitch<Adapter> modelSwitch =
+ new ContextsSwitch<Adapter>() {
+ @Override
+ public Adapter caseContext(Context object) {
+ return createContextAdapter();
+ }
+ @Override
+ public Adapter caseDisplayUnit(DisplayUnit object) {
+ return createDisplayUnitAdapter();
+ }
+ @Override
+ public Adapter caseTab(Tab object) {
+ return createTabAdapter();
+ }
+ @Override
+ public Adapter caseView(View object) {
+ return createViewAdapter();
+ }
+ @Override
+ public Adapter caseSection(Section object) {
+ return createSectionAdapter();
+ }
+ @Override
+ public Adapter caseDataContextElement(DataContextElement object) {
+ return createDataContextElementAdapter();
+ }
+ @Override
+ public Adapter caseProperty(Property object) {
+ return createPropertyAdapter();
+ }
+ @Override
+ public Adapter caseUnknownProperty(UnknownProperty object) {
+ return createUnknownPropertyAdapter();
+ }
+ @Override
+ public Adapter caseDataContextPackage(DataContextPackage object) {
+ return createDataContextPackageAdapter();
+ }
+ @Override
+ public Adapter caseDataContextRoot(DataContextRoot object) {
+ return createDataContextRootAdapter();
+ }
+ @Override
+ public Adapter caseConstraintDescriptor(ConstraintDescriptor object) {
+ return createConstraintDescriptorAdapter();
+ }
+ @Override
+ public Adapter caseSimpleConstraint(SimpleConstraint object) {
+ return createSimpleConstraintAdapter();
+ }
+ @Override
+ public Adapter caseCompositeConstraint(CompositeConstraint object) {
+ return createCompositeConstraintAdapter();
+ }
+ @Override
+ public Adapter caseConfigProperty(ConfigProperty object) {
+ return createConfigPropertyAdapter();
+ }
+ @Override
+ public Adapter caseValueProperty(ValueProperty object) {
+ return createValuePropertyAdapter();
+ }
+ @Override
+ public Adapter caseReferenceProperty(ReferenceProperty object) {
+ return createReferencePropertyAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.Context <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.Context
+ * @generated
+ */
+ public Adapter createContextAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.DisplayUnit <em>Display Unit</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.DisplayUnit
+ * @generated
+ */
+ public Adapter createDisplayUnitAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.View <em>View</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.View
+ * @generated
+ */
+ public Adapter createViewAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.Tab <em>Tab</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.Tab
+ * @generated
+ */
+ public Adapter createTabAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.Section <em>Section</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.Section
+ * @generated
+ */
+ public Adapter createSectionAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.DataContextElement <em>Data Context Element</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextElement
+ * @generated
+ */
+ public Adapter createDataContextElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.Property <em>Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.Property
+ * @generated
+ */
+ public Adapter createPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.UnknownProperty <em>Unknown Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.UnknownProperty
+ * @generated
+ */
+ public Adapter createUnknownPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.DataContextPackage <em>Data Context Package</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextPackage
+ * @generated
+ */
+ public Adapter createDataContextPackageAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.DataContextRoot <em>Data Context Root</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.DataContextRoot
+ * @generated
+ */
+ public Adapter createDataContextRootAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.ConstraintDescriptor <em>Constraint Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.ConstraintDescriptor
+ * @generated
+ */
+ public Adapter createConstraintDescriptorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.SimpleConstraint <em>Simple Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.SimpleConstraint
+ * @generated
+ */
+ public Adapter createSimpleConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.CompositeConstraint <em>Composite Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.CompositeConstraint
+ * @generated
+ */
+ public Adapter createCompositeConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.ConfigProperty <em>Config Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.ConfigProperty
+ * @generated
+ */
+ public Adapter createConfigPropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.ValueProperty <em>Value Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.ValueProperty
+ * @generated
+ */
+ public Adapter createValuePropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.properties.contexts.ReferenceProperty <em>Reference Property</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.properties.contexts.ReferenceProperty
+ * @generated
+ */
+ public Adapter createReferencePropertyAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ContextsAdapterFactory
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsSwitch.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsSwitch.java
new file mode 100644
index 00000000000..041325ce669
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/contexts/util/ContextsSwitch.java
@@ -0,0 +1,463 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.contexts.util;
+
+import org.eclipse.emf.ecore.EModelElement;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.properties.contexts.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.contexts.ContextsPackage
+ * @generated
+ */
+public class ContextsSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ContextsPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ContextsSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ContextsPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ContextsPackage.CONTEXT: {
+ Context context = (Context)theEObject;
+ T result = caseContext(context);
+ if (result == null) result = caseEModelElement(context);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.DISPLAY_UNIT: {
+ DisplayUnit displayUnit = (DisplayUnit)theEObject;
+ T result = caseDisplayUnit(displayUnit);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.TAB: {
+ Tab tab = (Tab)theEObject;
+ T result = caseTab(tab);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.VIEW: {
+ View view = (View)theEObject;
+ T result = caseView(view);
+ if (result == null) result = caseDisplayUnit(view);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.SECTION: {
+ Section section = (Section)theEObject;
+ T result = caseSection(section);
+ if (result == null) result = caseDisplayUnit(section);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.DATA_CONTEXT_ELEMENT: {
+ DataContextElement dataContextElement = (DataContextElement)theEObject;
+ T result = caseDataContextElement(dataContextElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.PROPERTY: {
+ Property property = (Property)theEObject;
+ T result = caseProperty(property);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.UNKNOWN_PROPERTY: {
+ UnknownProperty unknownProperty = (UnknownProperty)theEObject;
+ T result = caseUnknownProperty(unknownProperty);
+ if (result == null) result = caseProperty(unknownProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.DATA_CONTEXT_PACKAGE: {
+ DataContextPackage dataContextPackage = (DataContextPackage)theEObject;
+ T result = caseDataContextPackage(dataContextPackage);
+ if (result == null) result = caseDataContextElement(dataContextPackage);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.DATA_CONTEXT_ROOT: {
+ DataContextRoot dataContextRoot = (DataContextRoot)theEObject;
+ T result = caseDataContextRoot(dataContextRoot);
+ if (result == null) result = caseDataContextPackage(dataContextRoot);
+ if (result == null) result = caseDataContextElement(dataContextRoot);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.CONSTRAINT_DESCRIPTOR: {
+ ConstraintDescriptor constraintDescriptor = (ConstraintDescriptor)theEObject;
+ T result = caseConstraintDescriptor(constraintDescriptor);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.SIMPLE_CONSTRAINT: {
+ SimpleConstraint simpleConstraint = (SimpleConstraint)theEObject;
+ T result = caseSimpleConstraint(simpleConstraint);
+ if (result == null) result = caseConstraintDescriptor(simpleConstraint);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.COMPOSITE_CONSTRAINT: {
+ CompositeConstraint compositeConstraint = (CompositeConstraint)theEObject;
+ T result = caseCompositeConstraint(compositeConstraint);
+ if (result == null) result = caseConstraintDescriptor(compositeConstraint);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.CONFIG_PROPERTY: {
+ ConfigProperty configProperty = (ConfigProperty)theEObject;
+ T result = caseConfigProperty(configProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.VALUE_PROPERTY: {
+ ValueProperty valueProperty = (ValueProperty)theEObject;
+ T result = caseValueProperty(valueProperty);
+ if (result == null) result = caseConfigProperty(valueProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ContextsPackage.REFERENCE_PROPERTY: {
+ ReferenceProperty referenceProperty = (ReferenceProperty)theEObject;
+ T result = caseReferenceProperty(referenceProperty);
+ if (result == null) result = caseConfigProperty(referenceProperty);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Context</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Context</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseContext(Context object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Display Unit</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Display Unit</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDisplayUnit(DisplayUnit object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>View</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>View</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseView(View object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Tab</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Tab</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTab(Tab object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Section</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Section</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSection(Section object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Data Context Element</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Data Context Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDataContextElement(DataContextElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProperty(Property object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Unknown Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Unknown Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUnknownProperty(UnknownProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Data Context Package</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Data Context Package</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDataContextPackage(DataContextPackage object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Data Context Root</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Data Context Root</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDataContextRoot(DataContextRoot object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Constraint Descriptor</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Constraint Descriptor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConstraintDescriptor(ConstraintDescriptor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Simple Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Simple Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSimpleConstraint(SimpleConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Composite Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Composite Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCompositeConstraint(CompositeConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Config Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Config Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConfigProperty(ConfigProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Value Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Value Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseValueProperty(ValueProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Reference Property</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Reference Property</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseReferenceProperty(ReferenceProperty object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel Element</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ContextsSwitch
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/CompositeWidgetType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/CompositeWidgetType.java
new file mode 100644
index 00000000000..e068839756c
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/CompositeWidgetType.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Composite Widget Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getCompositeWidgetType()
+ * @model
+ * @generated
+ */
+public interface CompositeWidgetType extends WidgetType {
+} // CompositeWidgetType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ConstraintType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ConstraintType.java
new file mode 100644
index 00000000000..5cd19aa24e7
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ConstraintType.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.ConstraintType#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.ConstraintType#getConstraintClass <em>Constraint Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getConstraintType()
+ * @model
+ * @generated
+ */
+public interface ConstraintType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getConstraintType_Label()
+ * @model required="true"
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.ConstraintType#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Constraint Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraint Class</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Constraint Class</em>' attribute.
+ * @see #setConstraintClass(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getConstraintType_ConstraintClass()
+ * @model required="true"
+ * @generated
+ */
+ String getConstraintClass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.ConstraintType#getConstraintClass <em>Constraint Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Constraint Class</em>' attribute.
+ * @see #getConstraintClass()
+ * @generated
+ */
+ void setConstraintClass(String value);
+
+} // ConstraintType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ContentProviderType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ContentProviderType.java
new file mode 100644
index 00000000000..67e569b7b22
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ContentProviderType.java
@@ -0,0 +1,27 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Content Provider Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getContentProviderType()
+ * @model
+ * @generated
+ */
+public interface ContentProviderType extends EObject {
+} // ContentProviderType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Environment.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Environment.java
new file mode 100644
index 00000000000..3f65780abbc
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Environment.java
@@ -0,0 +1,173 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.properties.contexts.Context;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Environment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getModelElementFactories <em>Model Element Factories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getConstraintTypes <em>Constraint Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getWidgetTypes <em>Widget Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getPropertyEditorTypes <em>Property Editor Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getCompositeWidgetTypes <em>Composite Widget Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getLayoutTypes <em>Layout Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getNamespaces <em>Namespaces</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Environment#getMiscClasses <em>Misc Classes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment()
+ * @model
+ * @generated
+ */
+public interface Environment extends EModelElement {
+ /**
+ * Returns the value of the '<em><b>Model Element Factories</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Model Element Factories</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Model Element Factories</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_ModelElementFactories()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ModelElementFactoryDescriptor> getModelElementFactories();
+
+ /**
+ * Returns the value of the '<em><b>Constraint Types</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.ConstraintType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Constraint Types</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Constraint Types</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_ConstraintTypes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ConstraintType> getConstraintTypes();
+
+ /**
+ * Returns the value of the '<em><b>Widget Types</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.StandardWidgetType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Widget Types</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Widget Types</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_WidgetTypes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<StandardWidgetType> getWidgetTypes();
+
+ /**
+ * Returns the value of the '<em><b>Property Editor Types</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.PropertyEditorType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Property Editor Types</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Property Editor Types</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_PropertyEditorTypes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<PropertyEditorType> getPropertyEditorTypes();
+
+ /**
+ * Returns the value of the '<em><b>Composite Widget Types</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.CompositeWidgetType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Composite Widget Types</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Composite Widget Types</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_CompositeWidgetTypes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<CompositeWidgetType> getCompositeWidgetTypes();
+
+ /**
+ * Returns the value of the '<em><b>Layout Types</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.LayoutType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Layout Types</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Layout Types</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_LayoutTypes()
+ * @model containment="true"
+ * @generated
+ */
+ EList<LayoutType> getLayoutTypes();
+
+ /**
+ * Returns the value of the '<em><b>Namespaces</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.Namespace}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespaces</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespaces</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_Namespaces()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Namespace> getNamespaces();
+
+ /**
+ * Returns the value of the '<em><b>Misc Classes</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.properties.environment.MiscClass}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Misc Classes</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Misc Classes</em>' containment reference list.
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getEnvironment_MiscClasses()
+ * @model containment="true"
+ * @generated
+ */
+ EList<MiscClass> getMiscClasses();
+
+} // Environment
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentFactory.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentFactory.java
new file mode 100644
index 00000000000..309566da781
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentFactory.java
@@ -0,0 +1,123 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage
+ * @generated
+ */
+public interface EnvironmentFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EnvironmentFactory eINSTANCE = org.eclipse.papyrus.properties.environment.impl.EnvironmentFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Environment</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Environment</em>'.
+ * @generated
+ */
+ Environment createEnvironment();
+
+ /**
+ * Returns a new object of class '<em>Property Editor Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Property Editor Type</em>'.
+ * @generated
+ */
+ PropertyEditorType createPropertyEditorType();
+
+ /**
+ * Returns a new object of class '<em>Composite Widget Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Composite Widget Type</em>'.
+ * @generated
+ */
+ CompositeWidgetType createCompositeWidgetType();
+
+ /**
+ * Returns a new object of class '<em>Layout Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Layout Type</em>'.
+ * @generated
+ */
+ LayoutType createLayoutType();
+
+ /**
+ * Returns a new object of class '<em>Constraint Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Constraint Type</em>'.
+ * @generated
+ */
+ ConstraintType createConstraintType();
+
+ /**
+ * Returns a new object of class '<em>Model Element Factory Descriptor</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Model Element Factory Descriptor</em>'.
+ * @generated
+ */
+ ModelElementFactoryDescriptor createModelElementFactoryDescriptor();
+
+ /**
+ * Returns a new object of class '<em>Standard Widget Type</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Standard Widget Type</em>'.
+ * @generated
+ */
+ StandardWidgetType createStandardWidgetType();
+
+ /**
+ * Returns a new object of class '<em>Namespace</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Namespace</em>'.
+ * @generated
+ */
+ Namespace createNamespace();
+
+ /**
+ * Returns a new object of class '<em>Misc Class</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Misc Class</em>'.
+ * @generated
+ */
+ MiscClass createMiscClass();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ EnvironmentPackage getEnvironmentPackage();
+
+} //EnvironmentFactory
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentPackage.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentPackage.java
new file mode 100644
index 00000000000..32f7ca4aff3
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/EnvironmentPackage.java
@@ -0,0 +1,1275 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface EnvironmentPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "environment";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/properties/environment";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "environment";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EnvironmentPackage eINSTANCE = org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl <em>Environment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getEnvironment()
+ * @generated
+ */
+ int ENVIRONMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__EANNOTATIONS = EcorePackage.EMODEL_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Model Element Factories</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__MODEL_ELEMENT_FACTORIES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Constraint Types</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__CONSTRAINT_TYPES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Widget Types</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__WIDGET_TYPES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Property Editor Types</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__PROPERTY_EDITOR_TYPES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Composite Widget Types</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__COMPOSITE_WIDGET_TYPES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Layout Types</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__LAYOUT_TYPES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Namespaces</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__NAMESPACES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Misc Classes</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT__MISC_CLASSES = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 7;
+
+ /**
+ * The number of structural features of the '<em>Environment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ENVIRONMENT_FEATURE_COUNT = EcorePackage.EMODEL_ELEMENT_FEATURE_COUNT + 8;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.WidgetTypeImpl <em>Widget Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.WidgetTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getWidgetType()
+ * @generated
+ */
+ int WIDGET_TYPE = 2;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int WIDGET_TYPE__LABEL = 0;
+
+ /**
+ * The feature id for the '<em><b>Widget Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int WIDGET_TYPE__WIDGET_CLASS = 1;
+
+ /**
+ * The feature id for the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int WIDGET_TYPE__NAMESPACE = 2;
+
+ /**
+ * The number of structural features of the '<em>Widget Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int WIDGET_TYPE_FEATURE_COUNT = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.PropertyEditorTypeImpl <em>Property Editor Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.PropertyEditorTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getPropertyEditorType()
+ * @generated
+ */
+ int PROPERTY_EDITOR_TYPE = 1;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_EDITOR_TYPE__LABEL = WIDGET_TYPE__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Widget Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_EDITOR_TYPE__WIDGET_CLASS = WIDGET_TYPE__WIDGET_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_EDITOR_TYPE__NAMESPACE = WIDGET_TYPE__NAMESPACE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_EDITOR_TYPE__TYPE = WIDGET_TYPE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_EDITOR_TYPE__MULTIPLICITY = WIDGET_TYPE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Property Editor Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PROPERTY_EDITOR_TYPE_FEATURE_COUNT = WIDGET_TYPE_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.CompositeWidgetTypeImpl <em>Composite Widget Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.CompositeWidgetTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getCompositeWidgetType()
+ * @generated
+ */
+ int COMPOSITE_WIDGET_TYPE = 3;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_WIDGET_TYPE__LABEL = WIDGET_TYPE__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Widget Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_WIDGET_TYPE__WIDGET_CLASS = WIDGET_TYPE__WIDGET_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_WIDGET_TYPE__NAMESPACE = WIDGET_TYPE__NAMESPACE;
+
+ /**
+ * The number of structural features of the '<em>Composite Widget Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int COMPOSITE_WIDGET_TYPE_FEATURE_COUNT = WIDGET_TYPE_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.LayoutTypeImpl <em>Layout Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.LayoutTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getLayoutType()
+ * @generated
+ */
+ int LAYOUT_TYPE = 4;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYOUT_TYPE__LABEL = WIDGET_TYPE__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Widget Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYOUT_TYPE__WIDGET_CLASS = WIDGET_TYPE__WIDGET_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYOUT_TYPE__NAMESPACE = WIDGET_TYPE__NAMESPACE;
+
+ /**
+ * The number of structural features of the '<em>Layout Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int LAYOUT_TYPE_FEATURE_COUNT = WIDGET_TYPE_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.ConstraintTypeImpl <em>Constraint Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.ConstraintTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getConstraintType()
+ * @generated
+ */
+ int CONSTRAINT_TYPE = 5;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_TYPE__LABEL = 0;
+
+ /**
+ * The feature id for the '<em><b>Constraint Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_TYPE__CONSTRAINT_CLASS = 1;
+
+ /**
+ * The number of structural features of the '<em>Constraint Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CONSTRAINT_TYPE_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.ModelElementFactoryDescriptorImpl <em>Model Element Factory Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.ModelElementFactoryDescriptorImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getModelElementFactoryDescriptor()
+ * @generated
+ */
+ int MODEL_ELEMENT_FACTORY_DESCRIPTOR = 6;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_ELEMENT_FACTORY_DESCRIPTOR__NAME = 0;
+
+ /**
+ * The feature id for the '<em><b>Factory Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_ELEMENT_FACTORY_DESCRIPTOR__FACTORY_CLASS = 1;
+
+ /**
+ * The number of structural features of the '<em>Model Element Factory Descriptor</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MODEL_ELEMENT_FACTORY_DESCRIPTOR_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.StandardWidgetTypeImpl <em>Standard Widget Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.StandardWidgetTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getStandardWidgetType()
+ * @generated
+ */
+ int STANDARD_WIDGET_TYPE = 7;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_WIDGET_TYPE__LABEL = WIDGET_TYPE__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Widget Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_WIDGET_TYPE__WIDGET_CLASS = WIDGET_TYPE__WIDGET_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_WIDGET_TYPE__NAMESPACE = WIDGET_TYPE__NAMESPACE;
+
+ /**
+ * The number of structural features of the '<em>Standard Widget Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STANDARD_WIDGET_TYPE_FEATURE_COUNT = WIDGET_TYPE_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.NamespaceImpl <em>Namespace</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.NamespaceImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getNamespace()
+ * @generated
+ */
+ int NAMESPACE = 8;
+
+ /**
+ * The feature id for the '<em><b>Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMESPACE__PREFIX = 0;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMESPACE__NAME = 1;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMESPACE__VALUE = 2;
+
+ /**
+ * The number of structural features of the '<em>Namespace</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAMESPACE_FEATURE_COUNT = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.impl.MiscClassImpl <em>Misc Class</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.MiscClassImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getMiscClass()
+ * @generated
+ */
+ int MISC_CLASS = 9;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MISC_CLASS__LABEL = 0;
+
+ /**
+ * The feature id for the '<em><b>Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MISC_CLASS__CLASS = 1;
+
+ /**
+ * The feature id for the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MISC_CLASS__NAMESPACE = 2;
+
+ /**
+ * The number of structural features of the '<em>Misc Class</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MISC_CLASS_FEATURE_COUNT = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.properties.environment.Type <em>Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getType()
+ * @generated
+ */
+ int TYPE = 10;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.Environment <em>Environment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Environment</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment
+ * @generated
+ */
+ EClass getEnvironment();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getModelElementFactories <em>Model Element Factories</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Model Element Factories</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getModelElementFactories()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_ModelElementFactories();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getConstraintTypes <em>Constraint Types</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Constraint Types</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getConstraintTypes()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_ConstraintTypes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getWidgetTypes <em>Widget Types</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Widget Types</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getWidgetTypes()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_WidgetTypes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getPropertyEditorTypes <em>Property Editor Types</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Property Editor Types</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getPropertyEditorTypes()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_PropertyEditorTypes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getCompositeWidgetTypes <em>Composite Widget Types</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Composite Widget Types</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getCompositeWidgetTypes()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_CompositeWidgetTypes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getLayoutTypes <em>Layout Types</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Layout Types</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getLayoutTypes()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_LayoutTypes();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getNamespaces <em>Namespaces</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Namespaces</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getNamespaces()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_Namespaces();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.properties.environment.Environment#getMiscClasses <em>Misc Classes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Misc Classes</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Environment#getMiscClasses()
+ * @see #getEnvironment()
+ * @generated
+ */
+ EReference getEnvironment_MiscClasses();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.PropertyEditorType <em>Property Editor Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Property Editor Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.PropertyEditorType
+ * @generated
+ */
+ EClass getPropertyEditorType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.PropertyEditorType#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.PropertyEditorType#getType()
+ * @see #getPropertyEditorType()
+ * @generated
+ */
+ EAttribute getPropertyEditorType_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.PropertyEditorType#getMultiplicity <em>Multiplicity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Multiplicity</em>'.
+ * @see org.eclipse.papyrus.properties.environment.PropertyEditorType#getMultiplicity()
+ * @see #getPropertyEditorType()
+ * @generated
+ */
+ EAttribute getPropertyEditorType_Multiplicity();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.WidgetType <em>Widget Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Widget Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.WidgetType
+ * @generated
+ */
+ EClass getWidgetType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.WidgetType#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.properties.environment.WidgetType#getLabel()
+ * @see #getWidgetType()
+ * @generated
+ */
+ EAttribute getWidgetType_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.WidgetType#getWidgetClass <em>Widget Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Widget Class</em>'.
+ * @see org.eclipse.papyrus.properties.environment.WidgetType#getWidgetClass()
+ * @see #getWidgetType()
+ * @generated
+ */
+ EAttribute getWidgetType_WidgetClass();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.environment.WidgetType#getNamespace <em>Namespace</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Namespace</em>'.
+ * @see org.eclipse.papyrus.properties.environment.WidgetType#getNamespace()
+ * @see #getWidgetType()
+ * @generated
+ */
+ EReference getWidgetType_Namespace();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.CompositeWidgetType <em>Composite Widget Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Composite Widget Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.CompositeWidgetType
+ * @generated
+ */
+ EClass getCompositeWidgetType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.LayoutType <em>Layout Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Layout Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.LayoutType
+ * @generated
+ */
+ EClass getLayoutType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.ConstraintType <em>Constraint Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Constraint Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.ConstraintType
+ * @generated
+ */
+ EClass getConstraintType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.ConstraintType#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.properties.environment.ConstraintType#getLabel()
+ * @see #getConstraintType()
+ * @generated
+ */
+ EAttribute getConstraintType_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.ConstraintType#getConstraintClass <em>Constraint Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Constraint Class</em>'.
+ * @see org.eclipse.papyrus.properties.environment.ConstraintType#getConstraintClass()
+ * @see #getConstraintType()
+ * @generated
+ */
+ EAttribute getConstraintType_ConstraintClass();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor <em>Model Element Factory Descriptor</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Model Element Factory Descriptor</em>'.
+ * @see org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor
+ * @generated
+ */
+ EClass getModelElementFactoryDescriptor();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getName()
+ * @see #getModelElementFactoryDescriptor()
+ * @generated
+ */
+ EAttribute getModelElementFactoryDescriptor_Name();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getFactoryClass <em>Factory Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Factory Class</em>'.
+ * @see org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getFactoryClass()
+ * @see #getModelElementFactoryDescriptor()
+ * @generated
+ */
+ EAttribute getModelElementFactoryDescriptor_FactoryClass();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.StandardWidgetType <em>Standard Widget Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Standard Widget Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.StandardWidgetType
+ * @generated
+ */
+ EClass getStandardWidgetType();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.Namespace <em>Namespace</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Namespace</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Namespace
+ * @generated
+ */
+ EClass getNamespace();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.Namespace#getPrefix <em>Prefix</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Prefix</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Namespace#getPrefix()
+ * @see #getNamespace()
+ * @generated
+ */
+ EAttribute getNamespace_Prefix();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.Namespace#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Namespace#getName()
+ * @see #getNamespace()
+ * @generated
+ */
+ EAttribute getNamespace_Name();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.Namespace#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Namespace#getValue()
+ * @see #getNamespace()
+ * @generated
+ */
+ EAttribute getNamespace_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.properties.environment.MiscClass <em>Misc Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Misc Class</em>'.
+ * @see org.eclipse.papyrus.properties.environment.MiscClass
+ * @generated
+ */
+ EClass getMiscClass();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.MiscClass#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see org.eclipse.papyrus.properties.environment.MiscClass#getLabel()
+ * @see #getMiscClass()
+ * @generated
+ */
+ EAttribute getMiscClass_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.properties.environment.MiscClass#getClass_ <em>Class</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Class</em>'.
+ * @see org.eclipse.papyrus.properties.environment.MiscClass#getClass_()
+ * @see #getMiscClass()
+ * @generated
+ */
+ EAttribute getMiscClass_Class();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.properties.environment.MiscClass#getNamespace <em>Namespace</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Namespace</em>'.
+ * @see org.eclipse.papyrus.properties.environment.MiscClass#getNamespace()
+ * @see #getMiscClass()
+ * @generated
+ */
+ EReference getMiscClass_Namespace();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.properties.environment.Type <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Type</em>'.
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @generated
+ */
+ EEnum getType();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ EnvironmentFactory getEnvironmentFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl <em>Environment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getEnvironment()
+ * @generated
+ */
+ EClass ENVIRONMENT = eINSTANCE.getEnvironment();
+
+ /**
+ * The meta object literal for the '<em><b>Model Element Factories</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__MODEL_ELEMENT_FACTORIES = eINSTANCE.getEnvironment_ModelElementFactories();
+
+ /**
+ * The meta object literal for the '<em><b>Constraint Types</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__CONSTRAINT_TYPES = eINSTANCE.getEnvironment_ConstraintTypes();
+
+ /**
+ * The meta object literal for the '<em><b>Widget Types</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__WIDGET_TYPES = eINSTANCE.getEnvironment_WidgetTypes();
+
+ /**
+ * The meta object literal for the '<em><b>Property Editor Types</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__PROPERTY_EDITOR_TYPES = eINSTANCE.getEnvironment_PropertyEditorTypes();
+
+ /**
+ * The meta object literal for the '<em><b>Composite Widget Types</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__COMPOSITE_WIDGET_TYPES = eINSTANCE.getEnvironment_CompositeWidgetTypes();
+
+ /**
+ * The meta object literal for the '<em><b>Layout Types</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__LAYOUT_TYPES = eINSTANCE.getEnvironment_LayoutTypes();
+
+ /**
+ * The meta object literal for the '<em><b>Namespaces</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__NAMESPACES = eINSTANCE.getEnvironment_Namespaces();
+
+ /**
+ * The meta object literal for the '<em><b>Misc Classes</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ENVIRONMENT__MISC_CLASSES = eINSTANCE.getEnvironment_MiscClasses();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.PropertyEditorTypeImpl <em>Property Editor Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.PropertyEditorTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getPropertyEditorType()
+ * @generated
+ */
+ EClass PROPERTY_EDITOR_TYPE = eINSTANCE.getPropertyEditorType();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY_EDITOR_TYPE__TYPE = eINSTANCE.getPropertyEditorType_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Multiplicity</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PROPERTY_EDITOR_TYPE__MULTIPLICITY = eINSTANCE.getPropertyEditorType_Multiplicity();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.WidgetTypeImpl <em>Widget Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.WidgetTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getWidgetType()
+ * @generated
+ */
+ EClass WIDGET_TYPE = eINSTANCE.getWidgetType();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute WIDGET_TYPE__LABEL = eINSTANCE.getWidgetType_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Widget Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute WIDGET_TYPE__WIDGET_CLASS = eINSTANCE.getWidgetType_WidgetClass();
+
+ /**
+ * The meta object literal for the '<em><b>Namespace</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference WIDGET_TYPE__NAMESPACE = eINSTANCE.getWidgetType_Namespace();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.CompositeWidgetTypeImpl <em>Composite Widget Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.CompositeWidgetTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getCompositeWidgetType()
+ * @generated
+ */
+ EClass COMPOSITE_WIDGET_TYPE = eINSTANCE.getCompositeWidgetType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.LayoutTypeImpl <em>Layout Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.LayoutTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getLayoutType()
+ * @generated
+ */
+ EClass LAYOUT_TYPE = eINSTANCE.getLayoutType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.ConstraintTypeImpl <em>Constraint Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.ConstraintTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getConstraintType()
+ * @generated
+ */
+ EClass CONSTRAINT_TYPE = eINSTANCE.getConstraintType();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONSTRAINT_TYPE__LABEL = eINSTANCE.getConstraintType_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Constraint Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CONSTRAINT_TYPE__CONSTRAINT_CLASS = eINSTANCE.getConstraintType_ConstraintClass();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.ModelElementFactoryDescriptorImpl <em>Model Element Factory Descriptor</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.ModelElementFactoryDescriptorImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getModelElementFactoryDescriptor()
+ * @generated
+ */
+ EClass MODEL_ELEMENT_FACTORY_DESCRIPTOR = eINSTANCE.getModelElementFactoryDescriptor();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MODEL_ELEMENT_FACTORY_DESCRIPTOR__NAME = eINSTANCE.getModelElementFactoryDescriptor_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Factory Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MODEL_ELEMENT_FACTORY_DESCRIPTOR__FACTORY_CLASS = eINSTANCE.getModelElementFactoryDescriptor_FactoryClass();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.StandardWidgetTypeImpl <em>Standard Widget Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.StandardWidgetTypeImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getStandardWidgetType()
+ * @generated
+ */
+ EClass STANDARD_WIDGET_TYPE = eINSTANCE.getStandardWidgetType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.NamespaceImpl <em>Namespace</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.NamespaceImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getNamespace()
+ * @generated
+ */
+ EClass NAMESPACE = eINSTANCE.getNamespace();
+
+ /**
+ * The meta object literal for the '<em><b>Prefix</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NAMESPACE__PREFIX = eINSTANCE.getNamespace_Prefix();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NAMESPACE__NAME = eINSTANCE.getNamespace_Name();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NAMESPACE__VALUE = eINSTANCE.getNamespace_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.impl.MiscClassImpl <em>Misc Class</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.impl.MiscClassImpl
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getMiscClass()
+ * @generated
+ */
+ EClass MISC_CLASS = eINSTANCE.getMiscClass();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MISC_CLASS__LABEL = eINSTANCE.getMiscClass_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Class</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MISC_CLASS__CLASS = eINSTANCE.getMiscClass_Class();
+
+ /**
+ * The meta object literal for the '<em><b>Namespace</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference MISC_CLASS__NAMESPACE = eINSTANCE.getMiscClass_Namespace();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.properties.environment.Type <em>Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @see org.eclipse.papyrus.properties.environment.impl.EnvironmentPackageImpl#getType()
+ * @generated
+ */
+ EEnum TYPE = eINSTANCE.getType();
+
+ }
+
+} //EnvironmentPackage
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/LayoutType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/LayoutType.java
new file mode 100644
index 00000000000..478072dab10
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/LayoutType.java
@@ -0,0 +1,28 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Layout Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getLayoutType()
+ * @model
+ * @generated
+ */
+public interface LayoutType extends WidgetType {
+
+} // LayoutType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/MiscClass.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/MiscClass.java
new file mode 100644
index 00000000000..c6d4312eb46
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/MiscClass.java
@@ -0,0 +1,113 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Misc Class</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.MiscClass#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.MiscClass#getClass_ <em>Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.MiscClass#getNamespace <em>Namespace</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getMiscClass()
+ * @model
+ * @generated
+ */
+public interface MiscClass extends EObject {
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getMiscClass_Label()
+ * @model
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.MiscClass#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Class</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Class</em>' attribute.
+ * @see #setClass(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getMiscClass_Class()
+ * @model required="true"
+ * @generated
+ */
+ String getClass_();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.MiscClass#getClass_ <em>Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Class</em>' attribute.
+ * @see #getClass_()
+ * @generated
+ */
+ void setClass(String value);
+
+ /**
+ * Returns the value of the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespace</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespace</em>' reference.
+ * @see #setNamespace(Namespace)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getMiscClass_Namespace()
+ * @model
+ * @generated
+ */
+ Namespace getNamespace();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.MiscClass#getNamespace <em>Namespace</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Namespace</em>' reference.
+ * @see #getNamespace()
+ * @generated
+ */
+ void setNamespace(Namespace value);
+
+} // MiscClass
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ModelElementFactoryDescriptor.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ModelElementFactoryDescriptor.java
new file mode 100644
index 00000000000..db81e701413
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/ModelElementFactoryDescriptor.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Model Element Factory Descriptor</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getFactoryClass <em>Factory Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getModelElementFactoryDescriptor()
+ * @model
+ * @generated
+ */
+public interface ModelElementFactoryDescriptor extends EObject {
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getModelElementFactoryDescriptor_Name()
+ * @model required="true"
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Factory Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Factory Class</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Factory Class</em>' attribute.
+ * @see #setFactoryClass(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getModelElementFactoryDescriptor_FactoryClass()
+ * @model required="true"
+ * @generated
+ */
+ String getFactoryClass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor#getFactoryClass <em>Factory Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Factory Class</em>' attribute.
+ * @see #getFactoryClass()
+ * @generated
+ */
+ void setFactoryClass(String value);
+
+} // ModelElementFactoryDescriptor
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Namespace.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Namespace.java
new file mode 100644
index 00000000000..cd1cfa34204
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Namespace.java
@@ -0,0 +1,113 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Namespace</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Namespace#getPrefix <em>Prefix</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Namespace#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.Namespace#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getNamespace()
+ * @model
+ * @generated
+ */
+public interface Namespace extends EObject {
+ /**
+ * Returns the value of the '<em><b>Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Prefix</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Prefix</em>' attribute.
+ * @see #setPrefix(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getNamespace_Prefix()
+ * @model
+ * @generated
+ */
+ String getPrefix();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.Namespace#getPrefix <em>Prefix</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Prefix</em>' attribute.
+ * @see #getPrefix()
+ * @generated
+ */
+ void setPrefix(String value);
+
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getNamespace_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.Namespace#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getNamespace_Value()
+ * @model required="true"
+ * @generated
+ */
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.Namespace#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(String value);
+
+} // Namespace
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/PropertyEditorType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/PropertyEditorType.java
new file mode 100644
index 00000000000..00bc86b3556
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/PropertyEditorType.java
@@ -0,0 +1,89 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property Editor Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.PropertyEditorType#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.PropertyEditorType#getMultiplicity <em>Multiplicity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getPropertyEditorType()
+ * @model
+ * @generated
+ */
+public interface PropertyEditorType extends WidgetType {
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.properties.environment.Type}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @see #setType(Type)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getPropertyEditorType_Type()
+ * @model required="true"
+ * @generated
+ */
+ Type getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.PropertyEditorType#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.properties.environment.Type
+ * @see #getType()
+ * @generated
+ */
+ void setType(Type value);
+
+ /**
+ * Returns the value of the '<em><b>Multiplicity</b></em>' attribute.
+ * The default value is <code>"1"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Multiplicity</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Multiplicity</em>' attribute.
+ * @see #setMultiplicity(int)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getPropertyEditorType_Multiplicity()
+ * @model default="1" required="true"
+ * @generated
+ */
+ int getMultiplicity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.PropertyEditorType#getMultiplicity <em>Multiplicity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Multiplicity</em>' attribute.
+ * @see #getMultiplicity()
+ * @generated
+ */
+ void setMultiplicity(int value);
+
+} // PropertyEditorType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/StandardWidgetType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/StandardWidgetType.java
new file mode 100644
index 00000000000..159c1cc9293
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/StandardWidgetType.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Standard Widget Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getStandardWidgetType()
+ * @model
+ * @generated
+ */
+public interface StandardWidgetType extends WidgetType {
+} // StandardWidgetType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Type.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Type.java
new file mode 100644
index 00000000000..fb9788e36a2
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/Type.java
@@ -0,0 +1,298 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getType()
+ * @model
+ * @generated
+ */
+public enum Type implements Enumerator {
+ /**
+ * The '<em><b>String</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #STRING_VALUE
+ * @generated
+ * @ordered
+ */
+ STRING(0, "String", "String"),
+
+ /**
+ * The '<em><b>Boolean</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #BOOLEAN_VALUE
+ * @generated
+ * @ordered
+ */
+ BOOLEAN(1, "Boolean", "Boolean"),
+
+ /**
+ * The '<em><b>Integer</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #INTEGER_VALUE
+ * @generated
+ * @ordered
+ */
+ INTEGER(2, "Integer", "Integer"),
+
+ /**
+ * The '<em><b>Reference</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #REFERENCE_VALUE
+ * @generated
+ * @ordered
+ */
+ REFERENCE(3, "Reference", "Reference"),
+
+ /**
+ * The '<em><b>Enumeration</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #ENUMERATION_VALUE
+ * @generated
+ * @ordered
+ */
+ ENUMERATION(4, "Enumeration", "Enumeration");
+
+ /**
+ * The '<em><b>String</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>String</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #STRING
+ * @model name="String"
+ * @generated
+ * @ordered
+ */
+ public static final int STRING_VALUE = 0;
+
+ /**
+ * The '<em><b>Boolean</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Boolean</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #BOOLEAN
+ * @model name="Boolean"
+ * @generated
+ * @ordered
+ */
+ public static final int BOOLEAN_VALUE = 1;
+
+ /**
+ * The '<em><b>Integer</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Integer</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #INTEGER
+ * @model name="Integer"
+ * @generated
+ * @ordered
+ */
+ public static final int INTEGER_VALUE = 2;
+
+ /**
+ * The '<em><b>Reference</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Reference</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #REFERENCE
+ * @model name="Reference"
+ * @generated
+ * @ordered
+ */
+ public static final int REFERENCE_VALUE = 3;
+
+ /**
+ * The '<em><b>Enumeration</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Enumeration</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #ENUMERATION
+ * @model name="Enumeration"
+ * @generated
+ * @ordered
+ */
+ public static final int ENUMERATION_VALUE = 4;
+
+ /**
+ * An array of all the '<em><b>Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final Type[] VALUES_ARRAY =
+ new Type[] {
+ STRING,
+ BOOLEAN,
+ INTEGER,
+ REFERENCE,
+ ENUMERATION,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<Type> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Type get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Type result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Type getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Type result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Type get(int value) {
+ switch (value) {
+ case STRING_VALUE: return STRING;
+ case BOOLEAN_VALUE: return BOOLEAN;
+ case INTEGER_VALUE: return INTEGER;
+ case REFERENCE_VALUE: return REFERENCE;
+ case ENUMERATION_VALUE: return ENUMERATION;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private Type(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //Type
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/WidgetType.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/WidgetType.java
new file mode 100644
index 00000000000..d28f359394d
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/WidgetType.java
@@ -0,0 +1,113 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Widget Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.WidgetType#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.WidgetType#getWidgetClass <em>Widget Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.WidgetType#getNamespace <em>Namespace</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getWidgetType()
+ * @model abstract="true"
+ * @generated
+ */
+public interface WidgetType extends EObject {
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getWidgetType_Label()
+ * @model required="true"
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.WidgetType#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Widget Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Widget Class</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Widget Class</em>' attribute.
+ * @see #setWidgetClass(String)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getWidgetType_WidgetClass()
+ * @model required="true"
+ * @generated
+ */
+ String getWidgetClass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.WidgetType#getWidgetClass <em>Widget Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Widget Class</em>' attribute.
+ * @see #getWidgetClass()
+ * @generated
+ */
+ void setWidgetClass(String value);
+
+ /**
+ * Returns the value of the '<em><b>Namespace</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Namespace</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Namespace</em>' reference.
+ * @see #setNamespace(Namespace)
+ * @see org.eclipse.papyrus.properties.environment.EnvironmentPackage#getWidgetType_Namespace()
+ * @model
+ * @generated
+ */
+ Namespace getNamespace();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.properties.environment.WidgetType#getNamespace <em>Namespace</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Namespace</em>' reference.
+ * @see #getNamespace()
+ * @generated
+ */
+ void setNamespace(Namespace value);
+
+} // WidgetType
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/CompositeWidgetTypeImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/CompositeWidgetTypeImpl.java
new file mode 100644
index 00000000000..bd24906466d
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/CompositeWidgetTypeImpl.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.properties.environment.CompositeWidgetType;
+import org.eclipse.papyrus.properties.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Composite Widget Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class CompositeWidgetTypeImpl extends WidgetTypeImpl implements CompositeWidgetType {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CompositeWidgetTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EnvironmentPackage.Literals.COMPOSITE_WIDGET_TYPE;
+ }
+
+} //CompositeWidgetTypeImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/ConstraintTypeImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/ConstraintTypeImpl.java
new file mode 100644
index 00000000000..8921804e3a9
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/ConstraintTypeImpl.java
@@ -0,0 +1,263 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.properties.environment.ConstraintType;
+import org.eclipse.papyrus.properties.environment.EnvironmentPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.ConstraintTypeImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.ConstraintTypeImpl#getConstraintClass <em>Constraint Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ConstraintTypeImpl extends EObjectImpl implements ConstraintType {
+
+ /**
+ * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LABEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected String label = LABEL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getConstraintClass() <em>Constraint Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConstraintClass()
+ * @generated
+ * @ordered
+ */
+ protected static final String CONSTRAINT_CLASS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getConstraintClass() <em>Constraint Class</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConstraintClass()
+ * @generated
+ * @ordered
+ */
+ protected String constraintClass = CONSTRAINT_CLASS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ConstraintTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EnvironmentPackage.Literals.CONSTRAINT_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLabel() {
+ return label;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLabel(String newLabel) {
+ String oldLabel = label;
+ label = newLabel;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EnvironmentPackage.CONSTRAINT_TYPE__LABEL, oldLabel, label));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getConstraintClass() {
+ return constraintClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConstraintClass(String newConstraintClass) {
+ String oldConstraintClass = constraintClass;
+ constraintClass = newConstraintClass;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS, oldConstraintClass, constraintClass));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ return getLabel();
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ return getConstraintClass();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ setLabel((String)newValue);
+ return;
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ setConstraintClass((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ setLabel(LABEL_EDEFAULT);
+ return;
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ setConstraintClass(CONSTRAINT_CLASS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EnvironmentPackage.CONSTRAINT_TYPE__LABEL:
+ return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+ case EnvironmentPackage.CONSTRAINT_TYPE__CONSTRAINT_CLASS:
+ return CONSTRAINT_CLASS_EDEFAULT == null ? constraintClass != null : !CONSTRAINT_CLASS_EDEFAULT.equals(constraintClass);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (label: ");
+ result.append(label);
+ result.append(", constraintClass: ");
+ result.append(constraintClass);
+ result.append(')');
+ return result.toString();
+ }
+
+ @Override
+ public boolean equals(Object object) {
+ if(object == null) {
+ return false;
+ }
+
+ if(this == object) {
+ return true;
+ }
+
+ if(object.getClass() == getClass()) {
+ ConstraintType constraint = (ConstraintType)object;
+
+ if(getConstraintClass() == null) {
+ if(constraint.getConstraintClass() != null) {
+ return false;
+ }
+ } else {
+ if(!getConstraintClass().equals(constraint.getConstraintClass())) {
+ return false;
+ }
+ }
+
+ if(getLabel() == null) {
+ if(constraint.getLabel() != null) {
+ return false;
+ }
+ } else {
+ if(!getLabel().equals(constraint.getLabel())) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ return false;
+ }
+
+} //ConstraintTypeImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentFactoryImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentFactoryImpl.java
new file mode 100644
index 00000000000..52235e4fbfb
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentFactoryImpl.java
@@ -0,0 +1,243 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.properties.environment.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EnvironmentFactoryImpl extends EFactoryImpl implements EnvironmentFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static EnvironmentFactory init() {
+ try {
+ EnvironmentFactory theEnvironmentFactory = (EnvironmentFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/properties/environment");
+ if (theEnvironmentFactory != null) {
+ return theEnvironmentFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new EnvironmentFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EnvironmentFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case EnvironmentPackage.ENVIRONMENT: return createEnvironment();
+ case EnvironmentPackage.PROPERTY_EDITOR_TYPE: return createPropertyEditorType();
+ case EnvironmentPackage.COMPOSITE_WIDGET_TYPE: return createCompositeWidgetType();
+ case EnvironmentPackage.LAYOUT_TYPE: return createLayoutType();
+ case EnvironmentPackage.CONSTRAINT_TYPE: return createConstraintType();
+ case EnvironmentPackage.MODEL_ELEMENT_FACTORY_DESCRIPTOR: return createModelElementFactoryDescriptor();
+ case EnvironmentPackage.STANDARD_WIDGET_TYPE: return createStandardWidgetType();
+ case EnvironmentPackage.NAMESPACE: return createNamespace();
+ case EnvironmentPackage.MISC_CLASS: return createMiscClass();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case EnvironmentPackage.TYPE:
+ return createTypeFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case EnvironmentPackage.TYPE:
+ return convertTypeToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Environment createEnvironment() {
+ EnvironmentImpl environment = new EnvironmentImpl();
+ return environment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public PropertyEditorType createPropertyEditorType() {
+ PropertyEditorTypeImpl propertyEditorType = new PropertyEditorTypeImpl();
+ return propertyEditorType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CompositeWidgetType createCompositeWidgetType() {
+ CompositeWidgetTypeImpl compositeWidgetType = new CompositeWidgetTypeImpl();
+ return compositeWidgetType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LayoutType createLayoutType() {
+ LayoutTypeImpl layoutType = new LayoutTypeImpl();
+ return layoutType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ConstraintType createConstraintType() {
+ ConstraintTypeImpl constraintType = new ConstraintTypeImpl();
+ return constraintType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ModelElementFactoryDescriptor createModelElementFactoryDescriptor() {
+ ModelElementFactoryDescriptorImpl modelElementFactoryDescriptor = new ModelElementFactoryDescriptorImpl();
+ return modelElementFactoryDescriptor;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StandardWidgetType createStandardWidgetType() {
+ StandardWidgetTypeImpl standardWidgetType = new StandardWidgetTypeImpl();
+ return standardWidgetType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Namespace createNamespace() {
+ NamespaceImpl namespace = new NamespaceImpl();
+ return namespace;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MiscClass createMiscClass() {
+ MiscClassImpl miscClass = new MiscClassImpl();
+ return miscClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Type createTypeFromString(EDataType eDataType, String initialValue) {
+ Type result = Type.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertTypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EnvironmentPackage getEnvironmentPackage() {
+ return (EnvironmentPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static EnvironmentPackage getPackage() {
+ return EnvironmentPackage.eINSTANCE;
+ }
+
+} //EnvironmentFactoryImpl
diff --git a/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentImpl.java b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentImpl.java
new file mode 100644
index 00000000000..37a4c7178ed
--- /dev/null
+++ b/plugins/views/properties/org.eclipse.papyrus.properties.model/src-gen/org/eclipse/papyrus/properties/environment/impl/EnvironmentImpl.java
@@ -0,0 +1,424 @@
+/*****************************************************************************
+ * Copyright (c) 2011 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:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.properties.environment.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EModelElementImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.properties.contexts.Context;
+
+import org.eclipse.papyrus.properties.environment.CompositeWidgetType;
+import org.eclipse.papyrus.properties.environment.ConstraintType;
+import org.eclipse.papyrus.properties.environment.Environment;
+import org.eclipse.papyrus.properties.environment.EnvironmentPackage;
+import org.eclipse.papyrus.properties.environment.LayoutType;
+import org.eclipse.papyrus.properties.environment.MiscClass;
+import org.eclipse.papyrus.properties.environment.ModelElementFactoryDescriptor;
+import org.eclipse.papyrus.properties.environment.Namespace;
+import org.eclipse.papyrus.properties.environment.PropertyEditorType;
+import org.eclipse.papyrus.properties.environment.StandardWidgetType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Environment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getModelElementFactories <em>Model Element Factories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getConstraintTypes <em>Constraint Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getWidgetTypes <em>Widget Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getPropertyEditorTypes <em>Property Editor Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getCompositeWidgetTypes <em>Composite Widget Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getLayoutTypes <em>Layout Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getNamespaces <em>Namespaces</em>}</li>
+ * <li>{@link org.eclipse.papyrus.properties.environment.impl.EnvironmentImpl#getMiscClasses <em>Misc Classes</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EnvironmentImpl extends EModelElementImpl implements Environment {
+ /**
+ * The cached value of the '{@link #getModelElementFactories() <em>Model Element Factories</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getModelElementFactories()
+ * @generated
+ * @ordered
+ */
+ protected EList<ModelElementFactoryDescriptor> modelElementFactories;
+
+ /**
+ * The cached value of the '{@link #getConstraintTypes() <em>Constraint Types</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConstraintTypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<ConstraintType> constraintTypes;
+
+ /**
+ * The cached value of the '{@link #getWidgetTypes() <em>Widget Types</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWidgetTypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<StandardWidgetType> widgetTypes;
+
+ /**
+ * The cached value of the '{@link #getPropertyEditorTypes() <em>Property Editor Types</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPropertyEditorTypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<PropertyEditorType> propertyEditorTypes;
+
+ /**
+ * The cached value of the '{@link #getCompositeWidgetTypes() <em>Composite Widget Types</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCompositeWidgetTypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<CompositeWidgetType> compositeWidgetTypes;
+
+ /**
+ * The cached value of the '{@link #getLayoutTypes() <em>Layout Types</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLayoutTypes()
+ * @generated
+ * @ordered
+ */
+ protected EList<LayoutType> layoutTypes;
+
+ /**
+ * The cached value of the '{@link #getNamespaces() <em>Namespaces</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getNamespaces()
+ * @generated
+ * @ordered
+ */
+ protected EList<Namespace> namespaces;
+
+ /**
+ * The cached value of the '{@link #getMiscClasses() <em>Misc Classes</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMiscClasses()
+ * @generated
+ * @ordered
+ */
+ protected EList<MiscClass> miscClasses;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EnvironmentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EnvironmentPackage.Literals.ENVIRONMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ModelElementFactoryDescriptor> getModelElementFactories() {
+ if (modelElementFactories == null) {
+ modelElementFactories = new EObjectContainmentEList<ModelElementFactoryDescriptor>(ModelElementFactoryDescriptor.class, this, EnvironmentPackage.ENVIRONMENT__MODEL_ELEMENT_FACTORIES);
+ }
+ return modelElementFactories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ConstraintType> getConstraintTypes() {
+ if (constraintTypes == null) {
+ constraintTypes = new EObjectContainmentEList<ConstraintType>(ConstraintType.class, this, EnvironmentPackage.ENVIRONMENT__CONSTRAINT_TYPES);
+ }
+ return constraintTypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<StandardWidgetType> getWidgetTypes() {
+ if (widgetTypes == null) {
+ widgetTypes = new EObjectContainmentEList<StandardWidgetType>(StandardWidgetType.class, this, EnvironmentPackage.ENVIRONMENT__WIDGET_TYPES);
+ }
+ return widgetTypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<PropertyEditorType> getPropertyEditorTypes() {
+ if (propertyEditorTypes == null) {
+ propertyEditorTypes = new EObjectContainmentEList<PropertyEditorType>(PropertyEditorType.class, this, EnvironmentPackage.ENVIRONMENT__PROPERTY_EDITOR_TYPES);
+ }
+ return propertyEditorTypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<CompositeWidgetType> getCompositeWidgetTypes() {
+ if (compositeWidgetTypes == null) {
+ compositeWidgetTypes = new EObjectContainmentEList<CompositeWidgetType>(CompositeWidgetType.class, this, EnvironmentPackage.ENVIRONMENT__COMPOSITE_WIDGET_TYPES);
+ }
+ return compositeWidgetTypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<LayoutType> getLayoutTypes() {
+ if (layoutTypes == null) {
+ layoutTypes = new EObjectContainmentEList<LayoutType>(LayoutType.class, this, EnvironmentPackage.ENVIRONMENT__LAYOUT_TYPES);
+ }
+ return layoutTypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Namespace> getNamespaces() {
+ if (namespaces == null) {
+ namespaces = new EObjectContainmentEList<Namespace>(Namespace.class, this, EnvironmentPackage.ENVIRONMENT__NAMESPACES);
+ }
+ return namespaces;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<MiscClass> getMiscClasses() {
+ if (miscClasses == null) {
+ miscClasses = new EObjectContainmentEList<MiscClass>(MiscClass.class, this, EnvironmentPackage.ENVIRONMENT__MISC_CLASSES);
+ }
+ return miscClasses;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EnvironmentPackage.ENVIRONMENT__MODEL_ELEMENT_FACTORIES:
+ return ((InternalEList<?>)getModelElementFactories()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__CONSTRAINT_TYPES:
+ return ((InternalEList<?>)getConstraintTypes()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__WIDGET_TYPES:
+ return ((InternalEList<?>)getWidgetTypes()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__PROPERTY_EDITOR_TYPES:
+ return ((InternalEList<?>)getPropertyEditorTypes()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__COMPOSITE_WIDGET_TYPES:
+ return ((InternalEList<?>)getCompositeWidgetTypes()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__LAYOUT_TYPES:
+ return ((InternalEList<?>)getLayoutTypes()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__NAMESPACES:
+ return ((InternalEList<?>)getNamespaces()).basicRemove(otherEnd, msgs);
+ case EnvironmentPackage.ENVIRONMENT__MISC_CLASSES:
+ return ((InternalEList<?>)getMiscClasses()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EnvironmentPackage.ENVIRONMENT__MODEL_ELEMENT_FACTORIES:
+ return getModelElementFactories();
+ case EnvironmentPackage.ENVIRONMENT__CONSTRAINT_TYPES:
+ return getConstraintTypes();
+ case EnvironmentPackage.ENVIRONMENT__WIDGET_TYPES:
+ return getWidgetTypes();
+ case EnvironmentPackage.ENVIRONMENT__PROPERTY_EDITOR_TYPES:
+ return getPropertyEditorTypes();
+ case EnvironmentPackage.ENVIRONMENT__COMPOSITE_WIDGET_TYPES:
+ return getCompositeWidgetTypes();
+ case EnvironmentPackage.ENVIRONMENT__LAYOUT_TYPES:
+ return getLayoutTypes();
+ case EnvironmentPackage.ENVIRONMENT__NAMESPACES:
+ return getNamespaces();
+ case EnvironmentPackage.ENVIRONMENT__MISC_CLASSES:
+ return getMiscClasses();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EnvironmentPackage.ENVIRONMENT__MODEL_ELEMENT_FACTORIES:
+ getModelElementFactories().clear();
+ getModelElementFactories().addAll((Collection<? extends ModelElementFactoryDescriptor>)newValue);
+ return;
+ case EnvironmentPackage.ENVIRONMENT__CONSTRAINT_TYPES:
+ getConstraintTypes().clear();
+ getConstraintTypes().addAll((Collection<? extends ConstraintType>)newValue);
+ return;
+ case EnvironmentPackage.ENVIRONMENT__WIDGET_TYPES:
+ getWidgetTypes().clear();
+ getWidgetTypes().addAll((Collection<? extends StandardWidgetType>)newValue);
+ return;
+ case EnvironmentPackage.ENVIRONMENT__PROPERTY_EDITOR_TYPES:
+ getPropertyEditorTypes().clear();
+ getPropertyEditorTypes().addAll((Collection<? extends PropertyEditorType>)newValue);
+ return;
+ case EnvironmentPackage.ENVIRONMENT__COMPOSITE_WIDGET_TYPES: