Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Lorenzo2018-03-20 10:24:46 +0000
committervincent lorenzo2018-03-23 14:04:06 +0000
commit20b61b1805a8fcabb95ca1ce470e8e281e2f867a (patch)
tree2b84250f07ef0f434abedd47cdc84183ef20b87f /plugins
parentb36be92ed00417eeb48f5ed3c77a6d89f1fd2295 (diff)
downloadorg.eclipse.papyrus-20b61b1805a8fcabb95ca1ce470e8e281e2f867a.tar.gz
org.eclipse.papyrus-20b61b1805a8fcabb95ca1ce470e8e281e2f867a.tar.xz
org.eclipse.papyrus-20b61b1805a8fcabb95ca1ce470e8e281e2f867a.zip
Bug 532639: [Table][Matrix] System shall enable to specify the creation location of relationships created using a matrix editor.
Change-Id: I4ffde565f069e65c85c838bd14aebb4b809c61b7 Signed-off-by: Vincent Lorenzo <vincent.lorenzo@cea.fr>
Diffstat (limited to 'plugins')
-rw-r--r--plugins/doc/org.eclipse.papyrus.infra.nattable.doc/META-INF/MANIFEST.MF2
-rw-r--r--plugins/doc/org.eclipse.papyrus.infra.nattable.doc/pom.xml2
-rwxr-xr-xplugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/images/matrix/ThePropertyViewForMatrix.pngbin32390 -> 42536 bytes
-rwxr-xr-xplugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixDevDoc.mediawiki18
-rwxr-xr-xplugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixUserDoc.mediawiki5
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/pom.xml2
-rw-r--r--plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/pom.xml2
-rw-r--r--plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/pom.xml2
-rw-r--r--plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/META-INF/MANIFEST.MF4
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/META-INF/MANIFEST.MF8
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/META-INF/MANIFEST.MF6
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_AxisGroup.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectTreeItemAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationTreeItemAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureTreeItemAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdTreeItemAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_IdTreeItemAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdTreeItemAxis.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_EObjectWrapper.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_IdWrapper.gifbin0 -> 223 bytes
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/plugin.properties10
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/pom.xml2
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/provider/GenericRelationshipMatrixCellEditorConfigurationItemProvider.java132
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/META-INF/MANIFEST.MF2
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/model/nattable.ecore31
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/pom.xml2
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/GenericRelationshipMatrixCellEditorConfiguration.java85
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/MatrixRelationShipOwnerStrategy.java396
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/NattablecelleditorPackage.java117
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/GenericRelationshipMatrixCellEditorConfigurationImpl.java189
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorFactoryImpl.java24
-rwxr-xr-xplugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorPackageImpl.java62
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF6
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/META-INF/MANIFEST.MF8
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/META-INF/MANIFEST.MF6
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/pom.xml2
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/contentprovider/MatrixRelationshipOwnerStrategyContentProvider.java55
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/Messages.java14
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/messages.properties7
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/MatrixRelationshipOwnerStrategyLabelProvider.java123
-rw-r--r--plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/pom.xml2
-rw-r--r--plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/META-INF/MANIFEST.MF8
-rw-r--r--plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/pom.xml2
-rw-r--r--plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/src/org/eclipse/papyrus/customization/nattableconfiguration/Activator.java4
-rwxr-xr-xplugins/uml/architecture/org.eclipse.papyrus.uml.architecture/META-INF/MANIFEST.MF8
-rw-r--r--plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/pom.xml2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/pom.xml2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/pom.xml2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/pom.xml2
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/META-INF/MANIFEST.MF6
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/cell/managers/AbstractUMLGenericMatrixRelationshipCellManager.java312
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/Messages.java12
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/messages.properties14
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/validator/RelationshipOwnerValidator.java191
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/pom.xml2
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/META-INF/MANIFEST.MF8
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/pom.xml2
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/GenericUMLRelationshipMatrix.ctx3
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/ui/Matrix.xwt11
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/modelelements/GenericUMLRelationshipMatrixModelElement.java54
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/AbstractMatrixRelationshipCellEditorConfigurationObservableValue.java2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwnerStrategyObservableValue.java37
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwneryObservableValue.java73
-rwxr-xr-xplugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/utils/MatrixPropertyConstants.java12
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.richtext/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/pom.xml2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/pom.xml2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/pom.xml2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/pom.xml2
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF6
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/pom.xml2
108 files changed, 2072 insertions, 147 deletions
diff --git a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/META-INF/MANIFEST.MF b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/META-INF/MANIFEST.MF
index ca9f38a26a3..31c13a1c841 100644
--- a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/META-INF/MANIFEST.MF
+++ b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Require-Bundle: org.eclipse.help;bundle-version="[3.7.0,4.0.0)",
org.eclipse.papyrus.infra.doc;bundle-version="[1.2.0,2.0.0)"
Bundle-Vendor: Eclipse Modeling Project
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.3.0.qualifier
Bundle-Name: Papyrus Table Documentation
Bundle-ManifestVersion: 2
Bundle-Description: %pluginDescription
diff --git a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/pom.xml b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/pom.xml
index 4cf3178b9d8..8a1e9647f6e 100644
--- a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/pom.xml
+++ b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/pom.xml
@@ -8,7 +8,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.doc</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.3.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<build>
diff --git a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/images/matrix/ThePropertyViewForMatrix.png b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/images/matrix/ThePropertyViewForMatrix.png
index 012223acc49..c0a1186f316 100755
--- a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/images/matrix/ThePropertyViewForMatrix.png
+++ b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/images/matrix/ThePropertyViewForMatrix.png
Binary files differ
diff --git a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixDevDoc.mediawiki b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixDevDoc.mediawiki
index 3897397528f..49515aeb4ed 100755
--- a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixDevDoc.mediawiki
+++ b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixDevDoc.mediawiki
@@ -56,6 +56,21 @@ Since Papyrus 3.0 (Eclipse Oxygen), Papyrus provides a generic matrix for UML Re
***'''cellContentsFilter''': a IBooleanEObjectExpression to filter (if required) the contents of the cell in order to display only relationship choosen by the user;
***'''editedElement''': the EClass (UML in our usecase) representing the relationship edited by the table;
*a new EPackage called '''wrapper''' has been created. It provides wrappers to be able to reference easily several kind of objects. Currently, only the implementation for EObject is provided, but extending it, we will be able to reference object which are not EObject too.
+***'''relationshipOwnerStrategy''': an enumeration value used to define the strategy to choose the owner of the created relationships.
+***'''relationshipOwner''': the owner chosen by the user, when the '''relationshipOwnerStrategy''' enumeration has the value '''Default'''
+***'''relationshipOwnerFeature''': the containment feature in the owner, defined by the user, used to contain the created relationships. This field is not yet used.
+**'''MatrixRelationShipDirection''': an enumeration used to define the direction of the relations displayed in the table:
+***'''NONE''': we display all directions in the matrixes (from row to columns AND from columns to rows),
+***'''FROM_ROW_TO_COLUMN''',
+***'''FROM_COLUMN_TO_ROW'''.
+**'''MatrixRelationShipOwnerStrategy''': an enumeration used to define the owner of the created relationships:
+***'''DEFAULT''': the owner will be calculated by Papyrus,
+***'''TABLE_CONTEXT''': the owner will be the context of the table,
+***'''ROW_OWNER''': the owner will be the row's owner,
+***'''ROW_AS_OWER''': the owner will be the row itself,
+***'''COLUMN_OWNER''': the owner will be the column's owner,
+***'''COLUMN_AS_OWNER''': the owner will be the column itself,
+***'''OTHER''': the owner is given by the user, using the field <code>'''GenericRelationshipMatrixCellEditorConfiguration#relationshipOwner'''</code>
*in '''TableConfiguration''':
**a new property '''ownedCellEditorConfigurations''', used to define the initial matrix configuration;
*in '''Table'''
@@ -93,7 +108,8 @@ Here, we will explain you how to create a matrix dedicated to a given relationsh
##'''Edited Element''': an element type representing the relationship edited in your table. This field is typed with the object '''ElementTypeConfiguration'''. To be able to define this field, you must:
###load a file '''*.elementtypesconfigurations'''. You can have defined your own element types or reuse a Papyrus one. In all cases, you must have the plugin with containing this file in your workspace.
###open the tableconfiguration file in text mode, to check that the reference to the element type is defined as <code>href="platform:/plugin/myFilePath"</code> and not as <code>href="platform:/resource/myFilePath"</code> or as <code>href="../../../myFilePath"</code>.
-##*the final matrix will work only if a cell editor managing the chosen element type exists
+###*the final matrix will work only if a cell editor managing the chosen element type exists
+###'''relationshipOwnerStrategy''': you should define the relationship owner strategy for your new matrix.
#Define the feature to listen (same behavior than TreeTable)
##Edit the '''TreeFillingConfiguration''' for rows and columns
##define the feature to listen (wrapped in a IAxis)
diff --git a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixUserDoc.mediawiki b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixUserDoc.mediawiki
index 83dfd6e3824..01fb77432b9 100755
--- a/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixUserDoc.mediawiki
+++ b/plugins/doc/org.eclipse.papyrus.infra.nattable.doc/src/site/mediawiki/matrixUserDoc.mediawiki
@@ -13,6 +13,10 @@ Some illustration are available after the description of the steps.
##fill the field '''Relation Kind''' to select the kind of relationship managed by the table,
##fill the field '''Direction''' to define the direction of the relationship managed by the table,
##if required, fill the field '''Contents Filter''', to be more precise in the displayed relationship.
+##if required, define the '''Owner Strategy''', to define which element will be the owner of the created relationships.
+##*'''Default''': this is Papyrus which is in charge to determine the owner.
+##*'''Other''': you must define yourself the owner for all created relationship, editing the next field too.
+##'''Relation Owner''': select a model element to contains all relationships created in the current matrix. A compatibility check will be done at your first cell edition in the Matrix and a dialog will be open in case of problems with your choices. This value is only used when '''Owner Strategy''' is set to '''Other'''.
#Now, if it is not already done, you can expand the rows of your table: '''Right CLick''' on the row header, then '''Expand All'''.
@@ -25,6 +29,7 @@ Some illustration are available after the description of the steps.
*the matrix property view used to configure the new matrix
[[File:images/matrix/ThePropertyViewForMatrix.png|frame|none|The Matrix property view, with the described order for its configuration.]]
+
*the result for a small model
[[File:images/matrix/MatrixResult.png|frame|none|The resulting matrix, for a small model, with its configuration displayed in the Property View]]
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/META-INF/MANIFEST.MF
index 6f697d2e1d8..a7b67580b80 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/META-INF/MANIFEST.MF
@@ -7,10 +7,10 @@ Require-Bundle: org.eclipse.papyrus.infra.editor.welcome;bundle-version="[2.0.0,
org.eclipse.papyrus.infra.services.navigation;bundle-version="[3.0.0,4.0.0)",
org.eclipse.jface.databinding;bundle-version="[1.8.0,2.0.0)",
org.eclipse.papyrus.infra.editor.welcome.nattable;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)"
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)"
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-ClassPath: .
Bundle-Localization: plugin
Bundle-Name: %pluginName
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/pom.xml b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/pom.xml
index e4c703769af..504395e7676 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/pom.xml
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.welcome/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.gmfdiag.welcome</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/META-INF/MANIFEST.MF b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/META-INF/MANIFEST.MF
index 21b89721a8b..62b506e187d 100644
--- a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/META-INF/MANIFEST.MF
+++ b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.internationalization.controlmode;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -17,6 +17,6 @@ Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.12.0,3.0.0)";visibility
org.eclipse.papyrus.infra.internationalization;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.internationalization.common;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)"
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)"
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.eclipse.papyrus.infra.internationalization.controlmode.Activator
diff --git a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/pom.xml b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/pom.xml
index 806958e54e4..6d67dc174d0 100644
--- a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/pom.xml
+++ b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.controlmode/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.internationalization.controlmode</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/META-INF/MANIFEST.MF b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/META-INF/MANIFEST.MF
index d551f113d1c..e4cee2b3a52 100644
--- a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/META-INF/MANIFEST.MF
+++ b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.internationalization.utils;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -15,7 +15,7 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.core;bundle-version="[3.0.0,4.0.0)",
org.eclipse.gmf.runtime.notation.edit;bundle-version="[1.7.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)",
org.eclipse.papyrus.infra.internationalization;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.jface;bundle-version="[3.12.0,4.0.0)",
diff --git a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/pom.xml b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/pom.xml
index b434746b6aa..89ff58cfe67 100644
--- a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/pom.xml
+++ b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization.utils/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.internationalization.utils</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/META-INF/MANIFEST.MF b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/META-INF/MANIFEST.MF
index 02682464f96..ff3bf186bc6 100644
--- a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/META-INF/MANIFEST.MF
+++ b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.internationalization;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -17,7 +17,7 @@ Export-Package: org.eclipse.papyrus.infra.internationalization,
org.eclipse.papyrus.infra.internationalization.utils
Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.12.0,3.0.0)";visibility:=reexport,
org.eclipse.ui.workbench;bundle-version="[3.108.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)",
org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.core;bundle-version="[3.0.0,4.0.0)",
org.eclipse.gmf.runtime.notation.edit;bundle-version="[1.7.0,2.0.0)",
diff --git a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/pom.xml b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/pom.xml
index 21e576d7b39..5151dd8cccb 100644
--- a/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/pom.xml
+++ b/plugins/infra/internationalization/org.eclipse.papyrus.infra.internationalization/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.internationalization</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/META-INF/MANIFEST.MF
index 0cba240afd0..e840681007f 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/META-INF/MANIFEST.MF
@@ -10,14 +10,14 @@ Export-Package: org.eclipse.papyrus.infra.emf.nattable,
org.eclipse.papyrus.infra.emf.nattable.registry,
org.eclipse.papyrus.infra.emf.nattable.selection,
org.eclipse.papyrus.infra.emf.nattable.validator
-Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)";visibility:=reexport,
+Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)"
Bundle-Vendor: Eclipse Modeling Project
Bundle-ActivationPolicy: lazy
-Bundle-Version: 4.0.0.qualifier
+Bundle-Version: 5.0.0.qualifier
Bundle-Name: Papyrus EMF Nattable
Bundle-Activator: org.eclipse.papyrus.infra.emf.nattable.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/pom.xml
index 3609eaf91ea..1f13906816c 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.emf.nattable/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.emf.nattable</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/META-INF/MANIFEST.MF
index 01387f51e3d..c7158d8af71 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/META-INF/MANIFEST.MF
@@ -10,12 +10,12 @@ Export-Package: org.eclipse.papyrus.infra.nattable.common,
org.eclipse.papyrus.infra.nattable.common.utils,
org.eclipse.papyrus.infra.nattable.common.wizards,
org.eclipse.papyrus.infra.nattable.internal.common.commands;x-friends:="org.eclipse.papyrus.infra.nattable.gmfdiag"
-Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
+Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.viewpoints.policy;bundle-version="[2.100.0,3.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.ui;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.types.core;bundle-version="[3.0.0,4.0.0)",
@@ -24,7 +24,7 @@ Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)
org.eclipse.papyrus.infra.nattable.representation;bundle-version="[1.0.0,2.0.0)";visibility:=reexport
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 4.100.0.qualifier
+Bundle-Version: 5.0.0.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.nattable.common.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/pom.xml
index ffd820d91ea..242c707ef10 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.common</artifactId>
- <version>4.100.0-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/META-INF/MANIFEST.MF
index 2d6a110f666..454a3f70749 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/META-INF/MANIFEST.MF
@@ -5,10 +5,10 @@ Export-Package: org.eclipse.papyrus.infra.nattable.controlmode,
Require-Bundle: org.eclipse.papyrus.infra.services.controlmode;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)"
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 2.0.0.qualifier
+Bundle-Version: 2.0.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.nattable.controlmode.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/pom.xml
index 05fcc190b6d..37f5449ef5d 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.controlmode/pom.xml
@@ -7,6 +7,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.controlmode</artifactId>
- <version>2.0.0-SNAPSHOT</version>
+ <version>2.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/META-INF/MANIFEST.MF
index 4d1016adae1..105a3bc91d8 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/META-INF/MANIFEST.MF
@@ -1,11 +1,11 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)"
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.nattable.internal.gmfdiag.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/pom.xml
index 460649282d0..612685224d7 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.gmfdiag/pom.xml
@@ -9,6 +9,6 @@
<relativePath>../../pom.xml</relativePath>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.gmfdiag</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/META-INF/MANIFEST.MF
index 2782b420e82..114693be454 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/META-INF/MANIFEST.MF
@@ -5,7 +5,7 @@ Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.12.0,4.0.0)",
org.eclipse.papyrus.infra.types.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.emf.expressions.edit;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.emf.edit;bundle-version="[2.12.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.ecore;bundle-version="[2.13.0,3.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.internationalization.utils;bundle-version="[1.0.0,2.0.0)"
@@ -24,7 +24,7 @@ Export-Package: org.eclipse.papyrus.infra.nattable.model.nattable.nattableaxis.p
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
-Bundle-Version: 3.0.0.qualifier
+Bundle-Version: 4.0.0.qualifier
Bundle-Localization: plugin
Bundle-Name: %pluginName
Bundle-Activator: org.eclipse.papyrus.infra.nattable.model.nattable.provider.NattableEditPlugin$Implementation
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_AxisGroup.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_AxisGroup.gif
new file mode 100644
index 00000000000..361b182bf49
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_AxisGroup.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectAxis.gif
new file mode 100644
index 00000000000..5758968c151
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectTreeItemAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectTreeItemAxis.gif
new file mode 100644
index 00000000000..2a8a6d1e38b
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EObjectTreeItemAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationAxis.gif
new file mode 100644
index 00000000000..504fdc43840
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationTreeItemAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationTreeItemAxis.gif
new file mode 100644
index 00000000000..5758968c151
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EOperationTreeItemAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureAxis.gif
new file mode 100644
index 00000000000..0e0d08d1144
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureTreeItemAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureTreeItemAxis.gif
new file mode 100644
index 00000000000..63b8ac35c40
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_EStructuralFeatureTreeItemAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdAxis.gif
new file mode 100644
index 00000000000..72ce2602fc0
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdTreeItemAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdTreeItemAxis.gif
new file mode 100644
index 00000000000..3f02915991f
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_FeatureIdTreeItemAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_IdTreeItemAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_IdTreeItemAxis.gif
new file mode 100644
index 00000000000..12861b659a0
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_IdTreeItemAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdAxis.gif
new file mode 100644
index 00000000000..e76646cad10
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdTreeItemAxis.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdTreeItemAxis.gif
new file mode 100644
index 00000000000..da4c4c5323e
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_ObjectIdTreeItemAxis.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_EObjectWrapper.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_EObjectWrapper.gif
new file mode 100644
index 00000000000..0e0d08d1144
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_EObjectWrapper.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_IdWrapper.gif b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_IdWrapper.gif
new file mode 100644
index 00000000000..b2bf1703890
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/icons/full/ctool16/CreateGenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_IdWrapper.gif
Binary files differ
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/plugin.properties b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/plugin.properties
index 424464ea736..49b97f81c27 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/plugin.properties
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/plugin.properties
@@ -257,3 +257,13 @@ _UI_MatrixRelationShipDirection_NONE_literal = NONE
_UI_MatrixRelationShipDirection_FROM_ROW_TO_COLUMN_literal = FROM_ROW_TO_COLUMN
_UI_MatrixRelationShipDirection_FROM_COLUMN_TO_ROW_literal = FROM_COLUMN_TO_ROW
_UI_Table_tableKindId_feature = Table Kind Id
+_UI_GenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerStrategy_feature = Relationship Owner Strategy
+_UI_GenericRelationshipMatrixCellEditorConfiguration_relationshipOwner_feature = Relationship Owner
+_UI_GenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerFeature_feature = Relationship Owner Feature
+_UI_MatrixRelationShipOwnerStrategy_DEFAULT_literal = DEFAULT
+_UI_MatrixRelationShipOwnerStrategy_TABLE_CONTEXT_literal = TABLE_CONTEXT
+_UI_MatrixRelationShipOwnerStrategy_ROW_OWNER_literal = ROW_OWNER
+_UI_MatrixRelationShipOwnerStrategy_ROW_AS_OWNER_literal = ROW_AS_OWNER
+_UI_MatrixRelationShipOwnerStrategy_COLUMN_OWNER_literal = COLUMN_OWNER
+_UI_MatrixRelationShipOwnerStrategy_COLUMN_AS_OWNER_literal = COLUMN_AS_OWNER
+_UI_MatrixRelationShipOwnerStrategy_OTHER_literal = OTHER
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/pom.xml
index af2504aff45..4f55dc5e2f8 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.model.edit</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/provider/GenericRelationshipMatrixCellEditorConfigurationItemProvider.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/provider/GenericRelationshipMatrixCellEditorConfigurationItemProvider.java
index 29f9e946c6e..e130f2cec70 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/provider/GenericRelationshipMatrixCellEditorConfigurationItemProvider.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.edit/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/provider/GenericRelationshipMatrixCellEditorConfigurationItemProvider.java
@@ -21,16 +21,19 @@ import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattableaxis.NattableaxisFactory;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablestyle.provider.StyledElementItemProvider;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.NattablewrapperFactory;
import org.eclipse.papyrus.infra.nattable.model.nattable.provider.NattableEditPlugin;
/**
@@ -65,6 +68,7 @@ public class GenericRelationshipMatrixCellEditorConfigurationItemProvider extend
addDirectionPropertyDescriptor(object);
addCellContentsFilterPropertyDescriptor(object);
addEditedElementPropertyDescriptor(object);
+ addRelationshipOwnerStrategyPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
@@ -158,6 +162,59 @@ public class GenericRelationshipMatrixCellEditorConfigurationItemProvider extend
}
/**
+ * This adds a property descriptor for the Relationship Owner Strategy feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRelationshipOwnerStrategyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_GenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerStrategy_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_GenericRelationshipMatrixCellEditorConfiguration_relationshipOwnerStrategy_feature", "_UI_GenericRelationshipMatrixCellEditorConfiguration_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER);
+ childrenFeatures.add(NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
* This returns GenericRelationshipMatrixCellEditorConfiguration.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -197,8 +254,13 @@ public class GenericRelationshipMatrixCellEditorConfigurationItemProvider extend
switch (notification.getFeatureID(GenericRelationshipMatrixCellEditorConfiguration.class)) {
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__CELL_EDITOR_ID:
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__DIRECTION:
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER:
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ return;
}
super.notifyChanged(notification);
}
@@ -213,6 +275,76 @@ public class GenericRelationshipMatrixCellEditorConfigurationItemProvider extend
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER,
+ NattablewrapperFactory.eINSTANCE.createEObjectWrapper()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER,
+ NattablewrapperFactory.eINSTANCE.createIdWrapper()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createIdTreeItemAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createEObjectAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createEObjectTreeItemAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createFeatureIdAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createFeatureIdTreeItemAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createEStructuralFeatureAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createEOperationAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createEStructuralFeatureTreeItemAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createEOperationTreeItemAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createObjectIdAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createObjectIdTreeItemAxis()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (NattablecelleditorPackage.Literals.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE,
+ NattableaxisFactory.eINSTANCE.createAxisGroup()));
}
/**
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/META-INF/MANIFEST.MF
index 31d76e3f019..30a9af51d32 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.12.0,4.0.0)",
org.eclipse.core.resources;bundle-version="[3.11.0,4.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.emf.ecore.xmi;bundle-version="[2.12.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.edit.ui;bundle-version="[2.12.0,3.0.0)";visibility:=reexport,
org.eclipse.ui.ide;bundle-version="[3.12.0,4.0.0)";visibility:=reexport,
@@ -25,7 +25,7 @@ Export-Package: org.eclipse.papyrus.infra.nattable.model.editor.customeditors,
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
-Bundle-Version: 3.0.0.qualifier
+Bundle-Version: 4.0.0.qualifier
Bundle-Localization: plugin
Bundle-Name: %pluginName
Bundle-Activator: org.eclipse.papyrus.infra.nattable.model.nattable.presentation.NattableEditorPlugin$Implementation
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/pom.xml
index bafb5d545e4..b6c01aff3af 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model.editor/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.model.editor</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/META-INF/MANIFEST.MF
index 43b63c3e99d..114cf288f10 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/META-INF/MANIFEST.MF
@@ -44,7 +44,7 @@ Export-Package: org.eclipse.papyrus.infra.nattable.model,
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
-Bundle-Version: 3.0.0.qualifier
+Bundle-Version: 4.0.0.qualifier
Bundle-Localization: plugin
Bundle-Name: %pluginName
Bundle-Activator: org.eclipse.papyrus.infra.nattable.model.Activator
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/model/nattable.ecore b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/model/nattable.ecore
index c2f665b907e..621cf1759b7 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/model/nattable.ecore
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/model/nattable.ecore
@@ -1006,6 +1006,25 @@
<details key="documentation" value="This field allows to define the kind of element to edit in the cell."/>
</eAnnotations>
</eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="relationshipOwnerStrategy"
+ lowerBound="1" eType="#//nattablecelleditor/MatrixRelationShipOwnerStrategy"
+ defaultValueLiteral="DEFAULT">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This field is used to define the owner of relationships created editing the matrix."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="relationshipOwner" eType="#//nattablewrapper/IWrapper"
+ containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This field is used only when the relationshipOwnerStrategy is set to Other."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="relationshipOwnerFeature"
+ eType="#//nattableaxis/IAxis" containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This field is used only when the relationshipOwnerStrategy is set to Other.&#xD;&#xA;It will be used, if required, to define the feature in the relationshipOwner which will owns the created relationship"/>
+ </eAnnotations>
+ </eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MatrixRelationShipDirection">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -1015,6 +1034,18 @@
<eLiterals name="FROM_ROW_TO_COLUMN" value="1" literal="FROM_ROW_TO_COLUMN"/>
<eLiterals name="FROM_COLUMN_TO_ROW" value="2" literal="FROM_COLUMN_TO_ROW"/>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="MatrixRelationShipOwnerStrategy">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This Enumeration is used to define the owner of relationships created editing the matrix."/>
+ </eAnnotations>
+ <eLiterals name="DEFAULT" literal="DEFAULT"/>
+ <eLiterals name="TABLE_CONTEXT" value="1" literal="TABLE_CONTEXT"/>
+ <eLiterals name="ROW_OWNER" value="2" literal="ROW_OWNER"/>
+ <eLiterals name="ROW_AS_OWNER" value="3" literal="ROW_AS_OWNER"/>
+ <eLiterals name="COLUMN_OWNER" value="4" literal="COLUMN_OWNER"/>
+ <eLiterals name="COLUMN_AS_OWNER" value="5" literal="COLUMN_AS_OWNER"/>
+ <eLiterals name="OTHER" value="6" literal="OTHER"/>
+ </eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IMatrixCellEditorConfiguration" abstract="true"
interface="true" eSuperTypes="#//nattablecelleditor/ICellEditorConfiguration">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/pom.xml
index c3b9225ca09..08b5417c6a7 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.model</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/GenericRelationshipMatrixCellEditorConfiguration.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/GenericRelationshipMatrixCellEditorConfiguration.java
index 8fc1ea67c78..14ce4057e2e 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/GenericRelationshipMatrixCellEditorConfiguration.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/GenericRelationshipMatrixCellEditorConfiguration.java
@@ -14,6 +14,8 @@ package org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanEObjectExpression;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattableaxis.IAxis;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.IWrapper;
import org.eclipse.papyrus.infra.types.ElementTypeConfiguration;
/**
@@ -32,6 +34,9 @@ import org.eclipse.papyrus.infra.types.ElementTypeConfiguration;
* <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getDirection <em>Direction</em>}</li>
* <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getCellContentsFilter <em>Cell Contents Filter</em>}</li>
* <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getEditedElement <em>Edited Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerStrategy <em>Relationship Owner Strategy</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwner <em>Relationship Owner</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerFeature <em>Relationship Owner Feature</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage#getGenericRelationshipMatrixCellEditorConfiguration()
@@ -119,4 +124,84 @@ public interface GenericRelationshipMatrixCellEditorConfiguration extends IMatri
*/
void setEditedElement(ElementTypeConfiguration value);
+ /**
+ * Returns the value of the '<em><b>Relationship Owner Strategy</b></em>' attribute.
+ * The default value is <code>"DEFAULT"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This field is used to define the owner of relationships created editing the matrix.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Relationship Owner Strategy</em>' attribute.
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy
+ * @see #setRelationshipOwnerStrategy(MatrixRelationShipOwnerStrategy)
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage#getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy()
+ * @model default="DEFAULT" required="true"
+ * @generated
+ */
+ MatrixRelationShipOwnerStrategy getRelationshipOwnerStrategy();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerStrategy <em>Relationship Owner Strategy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Relationship Owner Strategy</em>' attribute.
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy
+ * @see #getRelationshipOwnerStrategy()
+ * @generated
+ */
+ void setRelationshipOwnerStrategy(MatrixRelationShipOwnerStrategy value);
+
+ /**
+ * Returns the value of the '<em><b>Relationship Owner</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This field is used only when the relationshipOwnerStrategy is set to Other.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Relationship Owner</em>' containment reference.
+ * @see #setRelationshipOwner(IWrapper)
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage#getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner()
+ * @model containment="true"
+ * @generated
+ */
+ IWrapper getRelationshipOwner();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwner <em>Relationship Owner</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Relationship Owner</em>' containment reference.
+ * @see #getRelationshipOwner()
+ * @generated
+ */
+ void setRelationshipOwner(IWrapper value);
+
+ /**
+ * Returns the value of the '<em><b>Relationship Owner Feature</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This field is used only when the relationshipOwnerStrategy is set to Other.
+ * It will be used, if required, to define the feature in the relationshipOwner which will owns the created relationship
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Relationship Owner Feature</em>' containment reference.
+ * @see #setRelationshipOwnerFeature(IAxis)
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage#getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerFeature()
+ * @model containment="true"
+ * @generated
+ */
+ IAxis getRelationshipOwnerFeature();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerFeature <em>Relationship Owner Feature</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Relationship Owner Feature</em>' containment reference.
+ * @see #getRelationshipOwnerFeature()
+ * @generated
+ */
+ void setRelationshipOwnerFeature(IAxis value);
+
} // GenericRelationshipMatrixCellEditorConfiguration
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/MatrixRelationShipOwnerStrategy.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/MatrixRelationShipOwnerStrategy.java
new file mode 100644
index 00000000000..0e9dabd6047
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/MatrixRelationShipOwnerStrategy.java
@@ -0,0 +1,396 @@
+/**
+ * Copyright (c) 2013 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor;
+
+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>Matrix Relation Ship Owner Strategy</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This Enumeration is used to define the owner of relationships created editing the matrix.
+ * <!-- end-model-doc -->
+ *
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage#getMatrixRelationShipOwnerStrategy()
+ * @model
+ * @generated
+ */
+public enum MatrixRelationShipOwnerStrategy implements Enumerator {
+ /**
+ * The '<em><b>DEFAULT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #DEFAULT_VALUE
+ * @generated
+ * @ordered
+ */
+ DEFAULT(0, "DEFAULT", "DEFAULT"), //$NON-NLS-1$ //$NON-NLS-2$
+ /**
+ * The '<em><b>TABLE CONTEXT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #TABLE_CONTEXT_VALUE
+ * @generated
+ * @ordered
+ */
+ TABLE_CONTEXT(1, "TABLE_CONTEXT", "TABLE_CONTEXT"), //$NON-NLS-1$ //$NON-NLS-2$
+ /**
+ * The '<em><b>ROW OWNER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #ROW_OWNER_VALUE
+ * @generated
+ * @ordered
+ */
+ ROW_OWNER(2, "ROW_OWNER", "ROW_OWNER"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>ROW AS OWNER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #ROW_AS_OWNER_VALUE
+ * @generated
+ * @ordered
+ */
+ ROW_AS_OWNER(3, "ROW_AS_OWNER", "ROW_AS_OWNER"), //$NON-NLS-1$ //$NON-NLS-2$
+ /**
+ * The '<em><b>COLUMN OWNER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #COLUMN_OWNER_VALUE
+ * @generated
+ * @ordered
+ */
+ COLUMN_OWNER(4, "COLUMN_OWNER", "COLUMN_OWNER"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>COLUMN AS OWNER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #COLUMN_AS_OWNER_VALUE
+ * @generated
+ * @ordered
+ */
+ COLUMN_AS_OWNER(5, "COLUMN_AS_OWNER", "COLUMN_AS_OWNER"), //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>OTHER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #OTHER_VALUE
+ * @generated
+ * @ordered
+ */
+ OTHER(6, "OTHER", "OTHER"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ /**
+ * The '<em><b>DEFAULT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>DEFAULT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #DEFAULT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int DEFAULT_VALUE = 0;
+
+ /**
+ * The '<em><b>TABLE CONTEXT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>TABLE CONTEXT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #TABLE_CONTEXT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int TABLE_CONTEXT_VALUE = 1;
+
+ /**
+ * The '<em><b>ROW OWNER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>ROW OWNER</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #ROW_OWNER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int ROW_OWNER_VALUE = 2;
+
+ /**
+ * The '<em><b>ROW AS OWNER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>ROW AS OWNER</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #ROW_AS_OWNER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int ROW_AS_OWNER_VALUE = 3;
+
+ /**
+ * The '<em><b>COLUMN OWNER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>COLUMN OWNER</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #COLUMN_OWNER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int COLUMN_OWNER_VALUE = 4;
+
+ /**
+ * The '<em><b>COLUMN AS OWNER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>COLUMN AS OWNER</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #COLUMN_AS_OWNER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int COLUMN_AS_OWNER_VALUE = 5;
+
+ /**
+ * The '<em><b>OTHER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>OTHER</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #OTHER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int OTHER_VALUE = 6;
+
+ /**
+ * An array of all the '<em><b>Matrix Relation Ship Owner Strategy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static final MatrixRelationShipOwnerStrategy[] VALUES_ARRAY = new MatrixRelationShipOwnerStrategy[] {
+ DEFAULT,
+ TABLE_CONTEXT,
+ ROW_OWNER,
+ ROW_AS_OWNER,
+ COLUMN_OWNER,
+ COLUMN_AS_OWNER,
+ OTHER,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Matrix Relation Ship Owner Strategy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static final List<MatrixRelationShipOwnerStrategy> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Matrix Relation Ship Owner Strategy</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param literal
+ * the literal.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static MatrixRelationShipOwnerStrategy get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ MatrixRelationShipOwnerStrategy result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Matrix Relation Ship Owner Strategy</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param name
+ * the name.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static MatrixRelationShipOwnerStrategy getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ MatrixRelationShipOwnerStrategy result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Matrix Relation Ship Owner Strategy</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the integer value.
+ * @return the matching enumerator or <code>null</code>.
+ * @generated
+ */
+ public static MatrixRelationShipOwnerStrategy get(int value) {
+ switch (value) {
+ case DEFAULT_VALUE:
+ return DEFAULT;
+ case TABLE_CONTEXT_VALUE:
+ return TABLE_CONTEXT;
+ case ROW_OWNER_VALUE:
+ return ROW_OWNER;
+ case ROW_AS_OWNER_VALUE:
+ return ROW_AS_OWNER;
+ case COLUMN_OWNER_VALUE:
+ return COLUMN_OWNER;
+ case COLUMN_AS_OWNER_VALUE:
+ return COLUMN_AS_OWNER;
+ case OTHER_VALUE:
+ return OTHER;
+ }
+ 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 MatrixRelationShipOwnerStrategy(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;
+ }
+
+} // MatrixRelationShipOwnerStrategy
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/NattablecelleditorPackage.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/NattablecelleditorPackage.java
index 9b8c4b40dbd..917159747b5 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/NattablecelleditorPackage.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/NattablecelleditorPackage.java
@@ -316,13 +316,40 @@ public interface NattablecelleditorPackage extends EPackage {
int GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT = IMATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT + 2;
/**
+ * The feature id for the '<em><b>Relationship Owner Strategy</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY = IMATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Relationship Owner</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER = IMATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Relationship Owner Feature</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE = IMATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT + 5;
+
+ /**
* The number of structural features of the '<em>Generic Relationship Matrix Cell Editor Configuration</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT = IMATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT + 3;
+ int GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT = IMATRIX_CELL_EDITOR_CONFIGURATION_FEATURE_COUNT + 6;
/**
* The operation id for the '<em>Get EAnnotation</em>' operation.
@@ -381,6 +408,17 @@ public interface NattablecelleditorPackage extends EPackage {
/**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy <em>Matrix Relation Ship Owner Strategy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.NattablecelleditorPackageImpl#getMatrixRelationShipOwnerStrategy()
+ * @generated
+ */
+ int MATRIX_RELATION_SHIP_OWNER_STRATEGY = 4;
+
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.ICellEditorConfiguration <em>ICell Editor Configuration</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -445,6 +483,39 @@ public interface NattablecelleditorPackage extends EPackage {
EReference getGenericRelationshipMatrixCellEditorConfiguration_EditedElement();
/**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerStrategy <em>Relationship Owner Strategy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Relationship Owner Strategy</em>'.
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerStrategy()
+ * @see #getGenericRelationshipMatrixCellEditorConfiguration()
+ * @generated
+ */
+ EAttribute getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwner <em>Relationship Owner</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Relationship Owner</em>'.
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwner()
+ * @see #getGenericRelationshipMatrixCellEditorConfiguration()
+ * @generated
+ */
+ EReference getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerFeature <em>Relationship Owner Feature</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Relationship Owner Feature</em>'.
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerFeature()
+ * @see #getGenericRelationshipMatrixCellEditorConfiguration()
+ * @generated
+ */
+ EReference getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerFeature();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.IMatrixCellEditorConfiguration <em>IMatrix Cell Editor Configuration</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -465,6 +536,16 @@ public interface NattablecelleditorPackage extends EPackage {
EEnum getMatrixRelationShipDirection();
/**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy <em>Matrix Relation Ship Owner Strategy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Matrix Relation Ship Owner Strategy</em>'.
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy
+ * @generated
+ */
+ EEnum getMatrixRelationShipOwnerStrategy();
+
+ /**
* Returns the factory that creates the instances of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -540,6 +621,30 @@ public interface NattablecelleditorPackage extends EPackage {
EReference GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT = eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_EditedElement();
/**
+ * The meta object literal for the '<em><b>Relationship Owner Strategy</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY = eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy();
+
+ /**
+ * The meta object literal for the '<em><b>Relationship Owner</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER = eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner();
+
+ /**
+ * The meta object literal for the '<em><b>Relationship Owner Feature</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE = eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerFeature();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.IMatrixCellEditorConfiguration <em>IMatrix Cell Editor Configuration</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -559,6 +664,16 @@ public interface NattablecelleditorPackage extends EPackage {
*/
EEnum MATRIX_RELATION_SHIP_DIRECTION = eINSTANCE.getMatrixRelationShipDirection();
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy <em>Matrix Relation Ship Owner Strategy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy
+ * @see org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.NattablecelleditorPackageImpl#getMatrixRelationShipOwnerStrategy()
+ * @generated
+ */
+ EEnum MATRIX_RELATION_SHIP_OWNER_STRATEGY = eINSTANCE.getMatrixRelationShipOwnerStrategy();
+
}
} //NattablecelleditorPackage
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/GenericRelationshipMatrixCellEditorConfigurationImpl.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/GenericRelationshipMatrixCellEditorConfigurationImpl.java
index 304e7555e29..37fead0c62d 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/GenericRelationshipMatrixCellEditorConfigurationImpl.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/GenericRelationshipMatrixCellEditorConfigurationImpl.java
@@ -22,12 +22,15 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanEObjectExpression;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattableaxis.IAxis;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipDirection;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablestyle.impl.StyledElementImpl;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.IWrapper;
import org.eclipse.papyrus.infra.types.ElementTypeConfiguration;
/**
@@ -42,6 +45,9 @@ import org.eclipse.papyrus.infra.types.ElementTypeConfiguration;
* <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.GenericRelationshipMatrixCellEditorConfigurationImpl#getDirection <em>Direction</em>}</li>
* <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.GenericRelationshipMatrixCellEditorConfigurationImpl#getCellContentsFilter <em>Cell Contents Filter</em>}</li>
* <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.GenericRelationshipMatrixCellEditorConfigurationImpl#getEditedElement <em>Edited Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.GenericRelationshipMatrixCellEditorConfigurationImpl#getRelationshipOwnerStrategy <em>Relationship Owner Strategy</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.GenericRelationshipMatrixCellEditorConfigurationImpl#getRelationshipOwner <em>Relationship Owner</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.impl.GenericRelationshipMatrixCellEditorConfigurationImpl#getRelationshipOwnerFeature <em>Relationship Owner Feature</em>}</li>
* </ul>
*
* @generated
@@ -108,6 +114,46 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
protected ElementTypeConfiguration editedElement;
/**
+ * The default value of the '{@link #getRelationshipOwnerStrategy() <em>Relationship Owner Strategy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRelationshipOwnerStrategy()
+ * @generated
+ * @ordered
+ */
+ protected static final MatrixRelationShipOwnerStrategy RELATIONSHIP_OWNER_STRATEGY_EDEFAULT = MatrixRelationShipOwnerStrategy.DEFAULT;
+
+ /**
+ * The cached value of the '{@link #getRelationshipOwnerStrategy() <em>Relationship Owner Strategy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRelationshipOwnerStrategy()
+ * @generated
+ * @ordered
+ */
+ protected MatrixRelationShipOwnerStrategy relationshipOwnerStrategy = RELATIONSHIP_OWNER_STRATEGY_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getRelationshipOwner() <em>Relationship Owner</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRelationshipOwner()
+ * @generated
+ * @ordered
+ */
+ protected IWrapper relationshipOwner;
+
+ /**
+ * The cached value of the '{@link #getRelationshipOwnerFeature() <em>Relationship Owner Feature</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRelationshipOwnerFeature()
+ * @generated
+ * @ordered
+ */
+ protected IAxis relationshipOwnerFeature;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -254,11 +300,122 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
* <!-- end-user-doc -->
* @generated
*/
+ public MatrixRelationShipOwnerStrategy getRelationshipOwnerStrategy() {
+ return relationshipOwnerStrategy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRelationshipOwnerStrategy(MatrixRelationShipOwnerStrategy newRelationshipOwnerStrategy) {
+ MatrixRelationShipOwnerStrategy oldRelationshipOwnerStrategy = relationshipOwnerStrategy;
+ relationshipOwnerStrategy = newRelationshipOwnerStrategy == null ? RELATIONSHIP_OWNER_STRATEGY_EDEFAULT : newRelationshipOwnerStrategy;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY, oldRelationshipOwnerStrategy, relationshipOwnerStrategy));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IWrapper getRelationshipOwner() {
+ return relationshipOwner;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetRelationshipOwner(IWrapper newRelationshipOwner, NotificationChain msgs) {
+ IWrapper oldRelationshipOwner = relationshipOwner;
+ relationshipOwner = newRelationshipOwner;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER, oldRelationshipOwner, newRelationshipOwner);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRelationshipOwner(IWrapper newRelationshipOwner) {
+ if (newRelationshipOwner != relationshipOwner) {
+ NotificationChain msgs = null;
+ if (relationshipOwner != null)
+ msgs = ((InternalEObject)relationshipOwner).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER, null, msgs);
+ if (newRelationshipOwner != null)
+ msgs = ((InternalEObject)newRelationshipOwner).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER, null, msgs);
+ msgs = basicSetRelationshipOwner(newRelationshipOwner, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER, newRelationshipOwner, newRelationshipOwner));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IAxis getRelationshipOwnerFeature() {
+ return relationshipOwnerFeature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetRelationshipOwnerFeature(IAxis newRelationshipOwnerFeature, NotificationChain msgs) {
+ IAxis oldRelationshipOwnerFeature = relationshipOwnerFeature;
+ relationshipOwnerFeature = newRelationshipOwnerFeature;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE, oldRelationshipOwnerFeature, newRelationshipOwnerFeature);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRelationshipOwnerFeature(IAxis newRelationshipOwnerFeature) {
+ if (newRelationshipOwnerFeature != relationshipOwnerFeature) {
+ NotificationChain msgs = null;
+ if (relationshipOwnerFeature != null)
+ msgs = ((InternalEObject)relationshipOwnerFeature).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE, null, msgs);
+ if (newRelationshipOwnerFeature != null)
+ msgs = ((InternalEObject)newRelationshipOwnerFeature).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE, null, msgs);
+ msgs = basicSetRelationshipOwnerFeature(newRelationshipOwnerFeature, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE, newRelationshipOwnerFeature, newRelationshipOwnerFeature));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__CELL_CONTENTS_FILTER:
return basicSetCellContentsFilter(null, msgs);
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER:
+ return basicSetRelationshipOwner(null, msgs);
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE:
+ return basicSetRelationshipOwnerFeature(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
@@ -280,6 +437,12 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT:
if (resolve) return getEditedElement();
return basicGetEditedElement();
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY:
+ return getRelationshipOwnerStrategy();
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER:
+ return getRelationshipOwner();
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE:
+ return getRelationshipOwnerFeature();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -304,6 +467,15 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT:
setEditedElement((ElementTypeConfiguration)newValue);
return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY:
+ setRelationshipOwnerStrategy((MatrixRelationShipOwnerStrategy)newValue);
+ return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER:
+ setRelationshipOwner((IWrapper)newValue);
+ return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE:
+ setRelationshipOwnerFeature((IAxis)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -328,6 +500,15 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT:
setEditedElement((ElementTypeConfiguration)null);
return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY:
+ setRelationshipOwnerStrategy(RELATIONSHIP_OWNER_STRATEGY_EDEFAULT);
+ return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER:
+ setRelationshipOwner((IWrapper)null);
+ return;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE:
+ setRelationshipOwnerFeature((IAxis)null);
+ return;
}
super.eUnset(featureID);
}
@@ -348,6 +529,12 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
return cellContentsFilter != null;
case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT:
return editedElement != null;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY:
+ return relationshipOwnerStrategy != RELATIONSHIP_OWNER_STRATEGY_EDEFAULT;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER:
+ return relationshipOwner != null;
+ case NattablecelleditorPackage.GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE:
+ return relationshipOwnerFeature != null;
}
return super.eIsSet(featureID);
}
@@ -366,6 +553,8 @@ public class GenericRelationshipMatrixCellEditorConfigurationImpl extends Styled
result.append(cellEditorId);
result.append(", direction: "); //$NON-NLS-1$
result.append(direction);
+ result.append(", relationshipOwnerStrategy: "); //$NON-NLS-1$
+ result.append(relationshipOwnerStrategy);
result.append(')');
return result.toString();
}
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorFactoryImpl.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorFactoryImpl.java
index 7164ddd8efe..e805528f080 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorFactoryImpl.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorFactoryImpl.java
@@ -83,6 +83,8 @@ public class NattablecelleditorFactoryImpl extends EFactoryImpl implements Natta
switch (eDataType.getClassifierID()) {
case NattablecelleditorPackage.MATRIX_RELATION_SHIP_DIRECTION:
return createMatrixRelationShipDirectionFromString(eDataType, initialValue);
+ case NattablecelleditorPackage.MATRIX_RELATION_SHIP_OWNER_STRATEGY:
+ return createMatrixRelationShipOwnerStrategyFromString(eDataType, initialValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
@@ -98,6 +100,8 @@ public class NattablecelleditorFactoryImpl extends EFactoryImpl implements Natta
switch (eDataType.getClassifierID()) {
case NattablecelleditorPackage.MATRIX_RELATION_SHIP_DIRECTION:
return convertMatrixRelationShipDirectionToString(eDataType, instanceValue);
+ case NattablecelleditorPackage.MATRIX_RELATION_SHIP_OWNER_STRATEGY:
+ return convertMatrixRelationShipOwnerStrategyToString(eDataType, instanceValue);
default:
throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
@@ -138,6 +142,26 @@ public class NattablecelleditorFactoryImpl extends EFactoryImpl implements Natta
* <!-- end-user-doc -->
* @generated
*/
+ public MatrixRelationShipOwnerStrategy createMatrixRelationShipOwnerStrategyFromString(EDataType eDataType, String initialValue) {
+ MatrixRelationShipOwnerStrategy result = MatrixRelationShipOwnerStrategy.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertMatrixRelationShipOwnerStrategyToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public NattablecelleditorPackage getNattablecelleditorPackage() {
return (NattablecelleditorPackage)getEPackage();
}
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorPackageImpl.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorPackageImpl.java
index d02180ba641..ab83b98f19a 100755
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorPackageImpl.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.model/src-gen/org/eclipse/papyrus/infra/nattable/model/nattable/nattablecelleditor/impl/NattablecelleditorPackageImpl.java
@@ -49,6 +49,7 @@ import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.Gene
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.ICellEditorConfiguration;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.IMatrixCellEditorConfiguration;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipDirection;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorFactory;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
@@ -114,6 +115,13 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
private EEnum matrixRelationShipDirectionEEnum = null;
/**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum matrixRelationShipOwnerStrategyEEnum = 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.
@@ -273,6 +281,33 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
* <!-- end-user-doc -->
* @generated
*/
+ public EAttribute getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy() {
+ return (EAttribute)genericRelationshipMatrixCellEditorConfigurationEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner() {
+ return (EReference)genericRelationshipMatrixCellEditorConfigurationEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerFeature() {
+ return (EReference)genericRelationshipMatrixCellEditorConfigurationEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EClass getIMatrixCellEditorConfiguration() {
return iMatrixCellEditorConfigurationEClass;
}
@@ -291,6 +326,15 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
* <!-- end-user-doc -->
* @generated
*/
+ public EEnum getMatrixRelationShipOwnerStrategy() {
+ return matrixRelationShipOwnerStrategyEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public NattablecelleditorFactory getNattablecelleditorFactory() {
return (NattablecelleditorFactory)getEFactoryInstance();
}
@@ -321,11 +365,15 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
createEAttribute(genericRelationshipMatrixCellEditorConfigurationEClass, GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__DIRECTION);
createEReference(genericRelationshipMatrixCellEditorConfigurationEClass, GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__CELL_CONTENTS_FILTER);
createEReference(genericRelationshipMatrixCellEditorConfigurationEClass, GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__EDITED_ELEMENT);
+ createEAttribute(genericRelationshipMatrixCellEditorConfigurationEClass, GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_STRATEGY);
+ createEReference(genericRelationshipMatrixCellEditorConfigurationEClass, GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER);
+ createEReference(genericRelationshipMatrixCellEditorConfigurationEClass, GENERIC_RELATIONSHIP_MATRIX_CELL_EDITOR_CONFIGURATION__RELATIONSHIP_OWNER_FEATURE);
iMatrixCellEditorConfigurationEClass = createEClass(IMATRIX_CELL_EDITOR_CONFIGURATION);
// Create enums
matrixRelationShipDirectionEEnum = createEEnum(MATRIX_RELATION_SHIP_DIRECTION);
+ matrixRelationShipOwnerStrategyEEnum = createEEnum(MATRIX_RELATION_SHIP_OWNER_STRATEGY);
}
/**
@@ -355,6 +403,8 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
NattablestylePackage theNattablestylePackage = (NattablestylePackage)EPackage.Registry.INSTANCE.getEPackage(NattablestylePackage.eNS_URI);
BooleanExpressionsPackage theBooleanExpressionsPackage = (BooleanExpressionsPackage)EPackage.Registry.INSTANCE.getEPackage(BooleanExpressionsPackage.eNS_URI);
ElementTypesConfigurationsPackage theElementTypesConfigurationsPackage = (ElementTypesConfigurationsPackage)EPackage.Registry.INSTANCE.getEPackage(ElementTypesConfigurationsPackage.eNS_URI);
+ NattablewrapperPackage theNattablewrapperPackage = (NattablewrapperPackage)EPackage.Registry.INSTANCE.getEPackage(NattablewrapperPackage.eNS_URI);
+ NattableaxisPackage theNattableaxisPackage = (NattableaxisPackage)EPackage.Registry.INSTANCE.getEPackage(NattableaxisPackage.eNS_URI);
// Create type parameters
@@ -373,6 +423,9 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
initEAttribute(getGenericRelationshipMatrixCellEditorConfiguration_Direction(), this.getMatrixRelationShipDirection(), "direction", "FROM_ROW_TO_COLUMN", 0, 1, GenericRelationshipMatrixCellEditorConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
initEReference(getGenericRelationshipMatrixCellEditorConfiguration_CellContentsFilter(), theBooleanExpressionsPackage.getIBooleanEObjectExpression(), null, "cellContentsFilter", null, 0, 1, GenericRelationshipMatrixCellEditorConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
initEReference(getGenericRelationshipMatrixCellEditorConfiguration_EditedElement(), theElementTypesConfigurationsPackage.getElementTypeConfiguration(), null, "editedElement", null, 0, 1, GenericRelationshipMatrixCellEditorConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy(), this.getMatrixRelationShipOwnerStrategy(), "relationshipOwnerStrategy", "DEFAULT", 1, 1, GenericRelationshipMatrixCellEditorConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEReference(getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner(), theNattablewrapperPackage.getIWrapper(), null, "relationshipOwner", null, 0, 1, GenericRelationshipMatrixCellEditorConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerFeature(), theNattableaxisPackage.getIAxis(), null, "relationshipOwnerFeature", null, 0, 1, GenericRelationshipMatrixCellEditorConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
initEClass(iMatrixCellEditorConfigurationEClass, IMatrixCellEditorConfiguration.class, "IMatrixCellEditorConfiguration", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
@@ -381,6 +434,15 @@ public class NattablecelleditorPackageImpl extends EPackageImpl implements Natta
addEEnumLiteral(matrixRelationShipDirectionEEnum, MatrixRelationShipDirection.NONE);
addEEnumLiteral(matrixRelationShipDirectionEEnum, MatrixRelationShipDirection.FROM_ROW_TO_COLUMN);
addEEnumLiteral(matrixRelationShipDirectionEEnum, MatrixRelationShipDirection.FROM_COLUMN_TO_ROW);
+
+ initEEnum(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.class, "MatrixRelationShipOwnerStrategy"); //$NON-NLS-1$
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.DEFAULT);
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.TABLE_CONTEXT);
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.ROW_OWNER);
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.ROW_AS_OWNER);
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.COLUMN_OWNER);
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.COLUMN_AS_OWNER);
+ addEEnumLiteral(matrixRelationShipOwnerStrategyEEnum, MatrixRelationShipOwnerStrategy.OTHER);
}
} //NattablecelleditorPackageImpl
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF
index fa6e502d1f5..07d83fe7dd0 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF
@@ -8,7 +8,7 @@ Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
Bundle-Name: %Bundle-Name
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
+Require-Bundle: org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.viewpoints.policy;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.emf.facet.query.java.core;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
@@ -19,9 +19,9 @@ Require-Bundle: org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,
org.eclipse.papyrus.extensionpoints.editors;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.views.modelexplorer;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.internationalization.utils;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[3.0.0,4.0.0)"
+ org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[4.0.0,5.0.0)"
Bundle-Vendor: %Bundle-Vendor
-Bundle-Version: 3.1.0.qualifier
+Bundle-Version: 4.0.0.qualifier
Bundle-Activator: org.eclipse.papyrus.infra.nattable.modelexplorer.Activator
Bundle-ManifestVersion: 2
Bundle-Description: %pluginDescription
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/pom.xml
index 3b06a8d1009..74241e44502 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/pom.xml
@@ -8,7 +8,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.modelexplorer</artifactId>
- <version>3.1.0-SNAPSHOT</version>
+ <version>4.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<description>This plugin provides : - the facets and the customization to display the Papyrus Nattables in the ModelExplorer</description>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/META-INF/MANIFEST.MF
index fe2e1974d47..29a680f2517 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/META-INF/MANIFEST.MF
@@ -6,14 +6,14 @@ Require-Bundle: org.eclipse.papyrus.infra.properties.ui;bundle-version="[3.0.0,4
org.eclipse.papyrus.infra.constraints;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.viewpoints.policy;bundle-version="[2.0.0,3.0.0)",
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)",
- org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.infra.internationalization.utils;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.internationalization;bundle-version="[1.0.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)"
+ org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 2.2.0.qualifier
+Bundle-Version: 2.2.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.nattable.properties.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/pom.xml
index 2e58eb8a66f..0a92136d67b 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.properties/pom.xml
@@ -7,6 +7,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.properties</artifactId>
- <version>2.2.0-SNAPSHOT</version>
+ <version>2.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/META-INF/MANIFEST.MF
index 77572ceb0e9..ffcf5b6bc1c 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.nattable.representation.edit;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.eclipse.papyrus.infra.nattable.representation.provider.RepresentationEditPlugin$Implementation
Bundle-Vendor: %providerName
@@ -20,8 +20,8 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore.edit;visibility:=reexport,
org.eclipse.papyrus.infra.types;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.types.edit;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.nattable.model;visibility:=reexport,
- org.eclipse.papyrus.infra.nattable.model.edit;visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.architecture.representation;bundle-version="[1.0.0,2.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.architecture.representation.edit;bundle-version="[1.0.0,2.0.0)";visibility:=reexport
Bundle-ActivationPolicy: lazy
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/pom.xml
index 973ffa17d99..e27e029afca 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation.edit/pom.xml
@@ -7,6 +7,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.representation.edit</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/META-INF/MANIFEST.MF
index fd3bbc675f2..2ce64d778c3 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.nattable.representation;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -15,6 +15,6 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.infra.core.architecture;bundle-version="[1.0.0,2.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.constraints;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.types;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.nattable.model;visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.architecture.representation;bundle-version="[1.0.0,2.0.0)";visibility:=reexport
Bundle-ActivationPolicy: lazy
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/pom.xml
index 888c774a38a..869890f5a06 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.representation/pom.xml
@@ -7,6 +7,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.representation</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/META-INF/MANIFEST.MF
index 5c1f9a32c36..9b88376c948 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/META-INF/MANIFEST.MF
@@ -7,12 +7,12 @@ Export-Package: org.eclipse.papyrus.infra.nattable.views.config,
org.eclipse.papyrus.infra.nattable.views.config.provider,
org.eclipse.papyrus.infra.nattable.views.config.utils
Require-Bundle: org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 4.0.0.qualifier
+Bundle-Version: 5.0.0.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.nattable.views.config.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/pom.xml
index ee7a09df5c4..f557ce80ddb 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.config/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.views.config</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/META-INF/MANIFEST.MF
index 15408d8984d..3ffbbcb2e30 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/META-INF/MANIFEST.MF
@@ -1,8 +1,8 @@
Manifest-Version: 1.0
-Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)"
+Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.papyrus.infra.nattable.views.editor;singleton:=true
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/pom.xml
index 615c7572ba5..83c7f11c228 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.views.editor/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable.views.editor</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF
index 55d051355c0..6d4238ab17a 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF
@@ -55,7 +55,7 @@ Export-Package: org.eclipse.papyrus.infra.nattable,
Require-Bundle: org.eclipse.gmf.runtime.emf.type.core;bundle-version="[1.9.0,2.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
org.eclipse.nebula.widgets.nattable.core;bundle-version="[1.5.0,2.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
@@ -71,7 +71,7 @@ Require-Bundle: org.eclipse.gmf.runtime.emf.type.core;bundle-version="[1.9.0,2.0
org.eclipse.papyrus.infra.internationalization.utils;bundle-version="[1.0.0,2.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 5.0.0.qualifier
+Bundle-Version: 6.0.0.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.nattable.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/pom.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/pom.xml
index b05017a558e..248d95cb20b 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/pom.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.nattable</artifactId>
- <version>5.0.0-SNAPSHOT</version>
+ <version>6.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/contentprovider/MatrixRelationshipOwnerStrategyContentProvider.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/contentprovider/MatrixRelationshipOwnerStrategyContentProvider.java
new file mode 100644
index 00000000000..9998ebd6476
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/contentprovider/MatrixRelationshipOwnerStrategyContentProvider.java
@@ -0,0 +1,55 @@
+/*****************************************************************************
+ * Copyright (c) 2018 CEA LIST and others.
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.nattable.contentprovider;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EEnumLiteral;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+
+/**
+ *
+ * This class provides the available relationship direction required to edit relationship in case of matrix table
+ *
+ */
+public class MatrixRelationshipOwnerStrategyContentProvider implements IStaticContentProvider {
+
+ /**
+ * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
+ *
+ * @param inputElement
+ * @return
+ */
+ @Override
+ public Object[] getElements(Object inputElement) {
+ return getElements();
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider#getElements()
+ *
+ * @return
+ */
+ @Override
+ public Object[] getElements() {
+ final List<Object> values = new ArrayList<Object>();
+ for (EEnumLiteral lit : NattablecelleditorPackage.eINSTANCE.getMatrixRelationShipOwnerStrategy().getELiterals()) {
+ values.add(lit.getInstance());
+ }
+ return values.toArray();
+ }
+
+}
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/Messages.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/Messages.java
index deb94c6a88e..eaa2d9ea929 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/Messages.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/Messages.java
@@ -497,6 +497,20 @@ public class Messages extends NLS {
public static String MatrixRelationshipDirectionLabelProvider_ColumnToRow;
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_ColumAsOwner;
+
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_ColumnsOwnerAsOwner;
+
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_Default;
+
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_Other;
+
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_RowAsOwner;
+
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_RowsOwnerAsOwner;
+
+ public static String MatrixRelationshipOwnerStrategyLabelProvider_TableRootElement;
+
/**
* @since 4.0
*/
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/messages.properties b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/messages.properties
index d3ac8c7f475..7456b67c4a1 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/messages.properties
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/messages/messages.properties
@@ -217,5 +217,12 @@ ExportTableDialog_OverrideConfirmMessasgeDialogText=Override confirmation
MatrixRelationshipDirectionLabelProvider_None=None
MatrixRelationshipDirectionLabelProvider_RowToColumn=From Row To Column
MatrixRelationshipDirectionLabelProvider_ColumnToRow=From Column To Row
+MatrixRelationshipOwnerStrategyLabelProvider_ColumAsOwner=Column as Owner
+MatrixRelationshipOwnerStrategyLabelProvider_ColumnsOwnerAsOwner=Column's Owner As Owner
+MatrixRelationshipOwnerStrategyLabelProvider_Default=Default
+MatrixRelationshipOwnerStrategyLabelProvider_Other=Other
+MatrixRelationshipOwnerStrategyLabelProvider_RowAsOwner=Row As Owner
+MatrixRelationshipOwnerStrategyLabelProvider_RowsOwnerAsOwner=Row's Owner As Owner
+MatrixRelationshipOwnerStrategyLabelProvider_TableRootElement=Table Root Element
CellPreferenceInitializer_NotAvailable=N/A
CellPreferencePage_UnsupportedColumnCellLabel=Define content of cell when its feature column is not supported \ No newline at end of file
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/MatrixRelationshipOwnerStrategyLabelProvider.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/MatrixRelationshipOwnerStrategyLabelProvider.java
new file mode 100644
index 00000000000..1cee9192244
--- /dev/null
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/MatrixRelationshipOwnerStrategyLabelProvider.java
@@ -0,0 +1,123 @@
+/*****************************************************************************
+ * Copyright (c) 2018 CEA LIST and others.
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.nattable.provider;
+
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.papyrus.infra.nattable.messages.Messages;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipOwnerStrategy;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * The label provider to use for the enumeration used to define the relationship direction
+ *
+ */
+public class MatrixRelationshipOwnerStrategyLabelProvider implements ILabelProvider {
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
+ *
+ * @param listener
+ */
+ @Override
+ public void addListener(ILabelProviderListener listener) {
+
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
+ *
+ */
+ @Override
+ public void dispose() {
+
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
+ *
+ * @param element
+ * @param property
+ * @return
+ */
+ @Override
+ public boolean isLabelProperty(Object element, String property) {
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
+ *
+ * @param listener
+ */
+ @Override
+ public void removeListener(ILabelProviderListener listener) {
+
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public Image getImage(Object element) {
+ return null;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
+ *
+ * @param direction
+ * @return
+ */
+ @Override
+ public String getText(Object direction) {
+ MatrixRelationShipOwnerStrategy instance = null;
+ if (direction instanceof MatrixRelationShipOwnerStrategy) {
+ instance = (MatrixRelationShipOwnerStrategy) direction;
+ }
+ String label = ""; //$NON-NLS-1$
+ if (null != instance) {
+ switch (instance.getValue()) {
+ case MatrixRelationShipOwnerStrategy.DEFAULT_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_Default;
+ break;
+ case MatrixRelationShipOwnerStrategy.ROW_AS_OWNER_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_RowAsOwner;
+ break;
+ case MatrixRelationShipOwnerStrategy.ROW_OWNER_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_RowsOwnerAsOwner;
+ break;
+ case MatrixRelationShipOwnerStrategy.COLUMN_AS_OWNER_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_ColumAsOwner;
+ break;
+ case MatrixRelationShipOwnerStrategy.COLUMN_OWNER_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_ColumnsOwnerAsOwner;
+ break;
+ case MatrixRelationShipOwnerStrategy.TABLE_CONTEXT_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_TableRootElement;
+ break;
+ case MatrixRelationShipOwnerStrategy.OTHER_VALUE:
+ label = Messages.MatrixRelationshipOwnerStrategyLabelProvider_Other;
+ break;
+ default:
+ label = instance.getName();
+ }
+ }
+ return label;
+ }
+
+}
diff --git a/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/META-INF/MANIFEST.MF b/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/META-INF/MANIFEST.MF
index a73fd149928..75850bc24c6 100644
--- a/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/META-INF/MANIFEST.MF
+++ b/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.ui.architecture;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.eclipse.papyrus.infra.ui.architecture.ArchitectureUIPlugin$Implementation
Bundle-Vendor: %providerName
@@ -22,5 +22,5 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.ui;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)"
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)"
Bundle-ActivationPolicy: lazy
diff --git a/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/pom.xml b/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/pom.xml
index 06fa013a04e..32eacb4deec 100644
--- a/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/pom.xml
+++ b/plugins/infra/ui/org.eclipse.papyrus.infra.ui.architecture/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.ui.architecture</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/META-INF/MANIFEST.MF b/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/META-INF/MANIFEST.MF
index be29057878f..b7625d31a44 100644
--- a/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/META-INF/MANIFEST.MF
+++ b/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.papyrus.customization.nattableconfiguration;singleton:=true
-Bundle-Version: 2.0.0.qualifier
+Bundle-Version: 2.0.100.qualifier
Bundle-Activator: org.eclipse.papyrus.customization.nattableconfiguration.Activator
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
@@ -18,9 +18,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.gmf.runtime.emf.type.core,
org.eclipse.papyrus.infra.core;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)",
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.nattable.model.edit;bundle-version="[4.0.0,5.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.ui;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.infra.ui.emf;bundle-version="[2.0.0,3.0.0)",
diff --git a/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/pom.xml b/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/pom.xml
index 59cec974905..7f585e682b5 100644
--- a/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/pom.xml
+++ b/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/pom.xml
@@ -9,6 +9,6 @@
</parent>
<artifactId>org.eclipse.papyrus.customization.nattableconfiguration</artifactId>
<groupId>org.eclipse.papyrus</groupId>
- <version>2.0.0-SNAPSHOT</version>
+ <version>2.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/src/org/eclipse/papyrus/customization/nattableconfiguration/Activator.java b/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/src/org/eclipse/papyrus/customization/nattableconfiguration/Activator.java
index 347b9c03825..176f45132cc 100644
--- a/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/src/org/eclipse/papyrus/customization/nattableconfiguration/Activator.java
+++ b/plugins/toolsmiths/org.eclipse.papyrus.customization.nattableconfiguration/src/org/eclipse/papyrus/customization/nattableconfiguration/Activator.java
@@ -13,8 +13,6 @@
package org.eclipse.papyrus.customization.nattableconfiguration;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;
@@ -22,7 +20,7 @@ import org.osgi.framework.BundleContext;
/**
* The activator class controls the plug-in life cycle.
*/
-public class Activator extends AbstractUIPlugin {
+public class Activator extends AbstractUIPlugin {
/**
* The plug-in ID
diff --git a/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/META-INF/MANIFEST.MF b/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/META-INF/MANIFEST.MF
index 47511f3787e..f938282829a 100755
--- a/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/META-INF/MANIFEST.MF
+++ b/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/META-INF/MANIFEST.MF
@@ -2,16 +2,16 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.uml.architecture;singleton:=true
-Bundle-Version: 1.1.0.qualifier
+Bundle-Version: 1.1.100.qualifier
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: org.eclipse.papyrus.uml.service.types;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.infra.constraints;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)",
- org.eclipse.papyrus.infra.nattable.views.config;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)",
+ org.eclipse.papyrus.infra.nattable.views.config;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.infra.services.controlmode;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.types.rulebased;bundle-version="[3.0.0,4.0.0)",
diff --git a/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/pom.xml b/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/pom.xml
index 3c69d2d7496..013f9c9d041 100644
--- a/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/pom.xml
+++ b/plugins/uml/architecture/org.eclipse.papyrus.uml.architecture/pom.xml
@@ -7,6 +7,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.architecture</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/META-INF/MANIFEST.MF
index 8106472f0a5..57a2715cd7f 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/META-INF/MANIFEST.MF
@@ -1,12 +1,12 @@
Manifest-Version: 1.0
-Require-Bundle: org.eclipse.papyrus.uml.nattable;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
+Require-Bundle: org.eclipse.papyrus.uml.nattable;bundle-version="[5.0.0,6.0.0)";visibility:=reexport,
org.eclipse.nebula.widgets.nattable.extension.glazedlists;bundle-version="[1.5.0,2.0.0)",
org.eclipse.papyrus.infra.viewpoints.policy;bundle-version="[2.0.0,3.0.0)"
Export-Package: org.eclipse.papyrus.uml.nattable.clazz.config,
org.eclipse.papyrus.uml.nattable.clazz.config.manager.axis
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 4.0.0.qualifier
+Bundle-Version: 5.0.0.qualifier
Bundle-Localization: plugin
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.uml.nattable.clazz.config.Activator
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/pom.xml
index bbfedde2e69..2d4d1e0ea3c 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.clazz.config</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/META-INF/MANIFEST.MF
index 9376cd00d8f..db663b4a9c9 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/META-INF/MANIFEST.MF
@@ -1,10 +1,10 @@
Manifest-Version: 1.0
-Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)",
+Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)",
org.eclipse.uml2.uml;bundle-version="[5.3.0,6.0.0)"
Export-Package: org.eclipse.papyrus.uml.nattable.generic.config
Bundle-Vendor: Eclipse Modeling Project
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-Name: UML Generic Table Config
Bundle-Activator: org.eclipse.papyrus.uml.nattable.generic.config.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/pom.xml
index 96029e3192a..6a72146bf56 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic.config/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.generic.config</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/META-INF/MANIFEST.MF
index a5fbf68527b..d1b644c59d1 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/META-INF/MANIFEST.MF
@@ -1,9 +1,9 @@
Manifest-Version: 1.0
-Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)",
+Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.uml.nattable.generic.config;bundle-version="[1.2.0,2.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.uml.nattable.generic.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/pom.xml
index 191e5c283e8..32d878d50bd 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.generic/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.generic</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/META-INF/MANIFEST.MF
index d320b3b5437..4930e7642fc 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/META-INF/MANIFEST.MF
@@ -7,11 +7,11 @@ Bundle-Vendor: Eclipse Modeling Project
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Require-Bundle: org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,2.0.0)",
org.eclipse.emf.ecore;bundle-version="[2.12.0,3.0.0)",
- org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)",
org.eclipse.uml2.uml;bundle-version="[5.3.0,6.0.0)",
- org.eclipse.papyrus.infra.nattable.model;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.nattable.model;bundle-version="[4.0.0,5.0.0)",
org.eclipse.papyrus.infra.emf.expressions;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.infra.types.core;bundle-version="[3.0.0,4.0.0)",
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/cell/managers/AbstractUMLGenericMatrixRelationshipCellManager.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/cell/managers/AbstractUMLGenericMatrixRelationshipCellManager.java
index e6f4ee33c3f..79d3d15ecaa 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/cell/managers/AbstractUMLGenericMatrixRelationshipCellManager.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/cell/managers/AbstractUMLGenericMatrixRelationshipCellManager.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2017 CEA LIST and others.
+ * Copyright (c) 2017, 2018 CEA LIST and others.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,6 +9,7 @@
* Contributors:
* Vincent Lorenzo (CEA LIST) - vincent.lorenzo@cea.fr - Initial API and implementation
* Thanh Liem PHAN (ALL4TEC) - thanhliem.phan@all4tec.net - Bug 515806
+ * Vincent Lorenzo (CEA LIST) - vincent.lorenzo@cea.fr - Bug 532639
*****************************************************************************/
package org.eclipse.papyrus.uml.nattable.matrix.cell.managers;
@@ -19,6 +20,12 @@ import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
import org.eclipse.emf.common.command.Command;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
@@ -26,16 +33,24 @@ import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.EStructuralFeature.Setting;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.gmf.runtime.common.core.command.CommandResult;
import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand;
import org.eclipse.gmf.runtime.emf.type.core.ElementTypeRegistry;
import org.eclipse.gmf.runtime.emf.type.core.IElementMatcher;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
import org.eclipse.gmf.runtime.emf.type.core.ISpecializationType;
import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest;
import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsFactory;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanEObjectExpression;
import org.eclipse.papyrus.infra.emf.gmf.command.GMFtoEMFCommandWrapper;
+import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
+import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForResourceSet;
import org.eclipse.papyrus.infra.nattable.manager.cell.AbstractCellManager;
import org.eclipse.papyrus.infra.nattable.manager.cell.IGenericMatrixRelationshipCellManager;
import org.eclipse.papyrus.infra.nattable.manager.table.IMatrixTableWidgetManager;
@@ -44,15 +59,23 @@ import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.ICellEditorConfiguration;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.MatrixRelationShipDirection;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.IWrapper;
import org.eclipse.papyrus.infra.nattable.utils.AxisUtils;
import org.eclipse.papyrus.infra.nattable.utils.CellHelper;
import org.eclipse.papyrus.infra.nattable.utils.TableEditingDomainUtils;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
import org.eclipse.papyrus.infra.types.ElementTypeConfiguration;
import org.eclipse.papyrus.infra.types.MetamodelTypeConfiguration;
import org.eclipse.papyrus.infra.types.SpecializationTypeConfiguration;
+import org.eclipse.papyrus.infra.ui.emf.dialog.NestedEditingDialogContext;
+import org.eclipse.papyrus.uml.nattable.matrix.Activator;
+import org.eclipse.papyrus.uml.nattable.matrix.messages.Messages;
+import org.eclipse.papyrus.uml.nattable.matrix.validator.RelationshipOwnerValidator;
import org.eclipse.papyrus.uml.tools.helper.UMLRelationshipHelper;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
import org.eclipse.uml2.uml.Element;
/**
@@ -147,7 +170,8 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
// we don't check if the source and target element have the required applied stereotype and other stuff, we delegate to the Service type
if (isEditable) {
- Command cmd = getSetValueCommand(TableEditingDomainUtils.getTableContextEditingDomain(manager.getTable()), columnElement, rowElement, Boolean.TRUE, manager);
+ // we check if the set value command is executable with the owner calculated by Papyrus
+ Command cmd = getSetValueCommand(TableEditingDomainUtils.getTableContextEditingDomain(manager.getTable()), columnElement, rowElement, Boolean.TRUE, manager, true);
isEditable = null == cmd ? false : cmd.canExecute();
}
return isEditable;
@@ -162,7 +186,7 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
* @param manager
* the table manager
* @return
- * <code>true</code> if the cell must be ediatable according to the arguments;
+ * <code>true</code> if the cell must be editable according to the arguments;
*/
protected final boolean isCellEditableIgnoringCurrentValue(final Object columnElement, final Object rowElement, final INattableModelManager manager) {
final Element realColumn = (Element) AxisUtils.getRepresentedElement(columnElement); // we already know that it is UML Element due to the handles method
@@ -213,9 +237,43 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
}
/**
+ * Returns the best owner for the created relationship, according to the value of {@link GenericRelationshipMatrixCellEditorConfiguration#getRelationshipOwnerStrategy()}
+ */
+ private final Element getBestOwner(final IMatrixTableWidgetManager tableManager, final ElementTypeConfiguration elementTypeConfiguration, final Element source, final Element target, final EObject context) {
+ final GenericRelationshipMatrixCellEditorConfiguration conf = getCellEditorConfiguration(tableManager);
+ if (null != conf) {
+ switch (conf.getRelationshipOwnerStrategy()) {
+ case ROW_AS_OWNER:
+ return source;
+ case ROW_OWNER:
+ return source.getOwner();
+ case COLUMN_AS_OWNER:
+ return target;
+ case COLUMN_OWNER:
+ return target.getOwner();
+ case TABLE_CONTEXT:
+ return (Element) context; // brutal cast, because, we don't yet support other usecase than Element
+ case OTHER:
+ final IWrapper wrapper = conf.getRelationshipOwner();
+ if (null != wrapper && wrapper.getElement() instanceof Element) {
+ return (Element) wrapper.getElement();
+ } else {
+ return null;
+ }
+ case DEFAULT:// default case
+ default:
+ // default case
+
+ }
+ }
+ return this.helper.getBestOwner(elementTypeConfiguration, source, target, (Element) context);
+
+ }
+
+ /**
*
* @param elementTypeConfiguration
- * the elemen type configruation declared in the table cell editor configuration
+ * the element type configuration declared in the table cell editor configuration
* @param source
* the source of the relationship to create
* @param target
@@ -224,6 +282,7 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
* the context of the table
* @return
* the element which should own the relationship after its creation
+ *
*/
protected Element getBestOwner(final ElementTypeConfiguration elementTypeConfiguration, final Element source, final Element target, final EObject context) {
return this.helper.getBestOwner(elementTypeConfiguration, source, target, (Element) context);
@@ -489,12 +548,98 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
* @param newValue
* @param tableManager
* @return
+ * the setValueCommand, using the relationship owner defined by the value of the {@link GenericRelationshipMatrixCellEditorConfiguration#MatrixRelationShipOwnerStrategy}
*/
@Override
public Command getSetValueCommand(final TransactionalEditingDomain domain, final Object columnElement, final Object rowElement, final Object newValue, final INattableModelManager tableManager) {
final Element realColumn = (Element) AxisUtils.getRepresentedElement(columnElement);
final Element realRow = (Element) AxisUtils.getRepresentedElement(rowElement);
+ final GenericRelationshipMatrixCellEditorConfiguration conf = getCellEditorConfiguration((IMatrixTableWidgetManager) tableManager);
+ final MatrixRelationShipDirection dir = conf.getDirection();
+ final EObject owner;
+ final EObject tableContext = tableManager.getTable().getContext();
+
+ switch (dir) {
+ case FROM_ROW_TO_COLUMN:
+ owner = getBestOwner((IMatrixTableWidgetManager) tableManager, conf.getEditedElement(), realRow, realColumn, tableContext);
+ break;
+ case FROM_COLUMN_TO_ROW:
+ owner = getBestOwner((IMatrixTableWidgetManager) tableManager, conf.getEditedElement(), realColumn, realRow, tableContext);
+ break;
+ default:
+ owner = null;
+ }
+
+ return getSetValueCommand(domain, columnElement, rowElement, newValue, tableManager, owner);
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.infra.nattable.manager.cell.AbstractCellManager#getSetValueCommand(org.eclipse.emf.transaction.TransactionalEditingDomain, java.lang.Object, java.lang.Object, java.lang.Object,
+ * org.eclipse.papyrus.infra.nattable.manager.table.INattableModelManager)
+ *
+ * @param domain
+ * @param columnElement
+ * @param rowElement
+ * @param newValue
+ * @param tableManager
+ * @param usePapyrusDefaultOwner
+ * if <code>true</code> we return the set value command using the owner calculated by Papyrus, if <code>false</code>, we use the owner strategy defined by the user, reading
+ * {@link GenericRelationshipMatrixCellEditorConfiguration#MatrixRelationShipOwnerStrategy}
+ * @return
+ * the command to use to set the cell value, using the calculated owner, according to the last argument ({@link usePapyrusDefaultOwner}) value
+ */
+ @SuppressWarnings("unused")
+ private final Command getSetValueCommand(final TransactionalEditingDomain domain, final Object columnElement, final Object rowElement, final Object newValue, final INattableModelManager tableManager, final boolean usePapyrusDefaultOwner) {
+ final Element realColumn = (Element) AxisUtils.getRepresentedElement(columnElement);
+ final Element realRow = (Element) AxisUtils.getRepresentedElement(rowElement);
+
+ final GenericRelationshipMatrixCellEditorConfiguration conf = getCellEditorConfiguration((IMatrixTableWidgetManager) tableManager);
+ final MatrixRelationShipDirection dir = conf.getDirection();
+ final EObject owner;
+ final EObject tableContext = tableManager.getTable().getContext();
+ switch (dir) {
+ case FROM_ROW_TO_COLUMN:
+ owner = usePapyrusDefaultOwner ?
+ // owner defined by Papyrus code
+ getBestOwner(conf.getEditedElement(), realRow, realColumn, tableContext) :
+ // owner defined by {@link GenericRelationshipMatrixCellEditorConfiguration#MatrixRelationShipOwnerStrategy}
+ getBestOwner((IMatrixTableWidgetManager) tableManager, conf.getEditedElement(), realRow, realColumn, tableContext);
+ break;
+ case FROM_COLUMN_TO_ROW:
+ owner = usePapyrusDefaultOwner ?
+ // owner defined by Papyrus code
+ getBestOwner(conf.getEditedElement(), realColumn, realRow, tableContext) :
+ // owner defined by {@link GenericRelationshipMatrixCellEditorConfiguration#MatrixRelationShipOwnerStrategy}
+ getBestOwner((IMatrixTableWidgetManager) tableManager, conf.getEditedElement(), realColumn, realRow, tableContext);
+ break;
+ default:
+ owner = null;
+ }
+
+ return getSetValueCommand(domain, columnElement, rowElement, newValue, tableManager, owner);
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.infra.nattable.manager.cell.AbstractCellManager#getSetValueCommand(org.eclipse.emf.transaction.TransactionalEditingDomain, java.lang.Object, java.lang.Object, java.lang.Object,
+ * org.eclipse.papyrus.infra.nattable.manager.table.INattableModelManager)
+ *
+ * @param domain
+ * @param columnElement
+ * @param rowElement
+ * @param newValue
+ * @param tableManager
+ * @param owner
+ * the owner of the created relationship
+ * @return
+ * the command to use to set the cell value, using the owner defined as parameter's method in case of relationship's creation
+ */
+ private final Command getSetValueCommand(final TransactionalEditingDomain domain, final Object columnElement, final Object rowElement, final Object newValue, final INattableModelManager tableManager, final EObject owner) {
+ final Element realColumn = (Element) AxisUtils.getRepresentedElement(columnElement);
+ final Element realRow = (Element) AxisUtils.getRepresentedElement(rowElement);
+
if (Boolean.FALSE.equals(newValue)) {
final List<Element> r = getMatchingRelationships(realColumn, realRow, tableManager);
if (r.size() == 1) {// according to the isCellEditable there are only 1 relationship
@@ -507,28 +652,40 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
}
}
if (Boolean.TRUE.equals(newValue)) {
- final GenericRelationshipMatrixCellEditorConfiguration conf = getCellEditorConfiguration((IMatrixTableWidgetManager) tableManager);
+ final IMatrixTableWidgetManager matrixManager = (IMatrixTableWidgetManager) tableManager;
+ final GenericRelationshipMatrixCellEditorConfiguration conf = getCellEditorConfiguration(matrixManager);
final MatrixRelationShipDirection dir = conf.getDirection();
final IElementType elementType = getElementTypeToCreate(conf);
final CreateRelationshipRequest request;
- final EObject owner;
-
switch (dir) {
case FROM_ROW_TO_COLUMN:
- owner = getBestOwner(conf.getEditedElement(), realRow, realColumn, tableManager.getTable().getContext());
request = new CreateRelationshipRequest(owner, realRow, realColumn, elementType);
break;
case FROM_COLUMN_TO_ROW:
- owner = getBestOwner(conf.getEditedElement(), realColumn, realRow, tableManager.getTable().getContext());
request = new CreateRelationshipRequest(owner, realColumn, realRow, elementType);
break;
default:
request = null;
- owner = null;
}
final IElementEditService provider = ElementEditServiceUtils.getCommandProvider(owner);
final ICommand cmd = provider.getEditCommand(request);
+
+ final RelationshipOwnerValidator validator = new RelationshipOwnerValidator(matrixManager);
+ final IStatus validationStatus = validator.validate(owner);
+
+ // we decided to trust the validation status, instead of the returned command which could be customized and create the relationship in a more good owner than chosen one!
+ if (false == validationStatus.isOK()) {
+ final ILabelProvider labelProvider = getLabelProvider(realRow);
+ final String rowLabel = null != labelProvider ? labelProvider.getText(realRow) : realRow.toString();
+ final String columnLabel = null != labelProvider ? labelProvider.getText(realColumn) : realColumn.toString();
+ final String ownerLabel = null != labelProvider ? labelProvider.getText(owner) : owner.toString();
+
+ final String str = NLS.bind(Messages.AbstractUMLGenericMatrixRelationshipCellManager_RelationshipCanBeCreated,
+ new String[] { elementType.getDisplayName(), rowLabel, columnLabel, ownerLabel, validationStatus.getMessage() });
+
+ return new GMFtoEMFCommandWrapper(new OpenMessageDialogCommand(domain, Messages.AbstractUMLGenericMatrixRelationshipCellManager_CreateRelationshipMessageDialogTitle, str, MessageDialog.ERROR));
+ }
if (null != cmd && cmd.canExecute()) {
return new GMFtoEMFCommandWrapper(cmd);
}
@@ -536,6 +693,27 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
return null;
}
+ /**
+ *
+ * @param eobject
+ * an eobject
+ * @return
+ * the label provider to use
+ */
+ private final ILabelProvider getLabelProvider(final EObject eobject) {
+ LabelProviderService lpSvc = null;
+ try {
+ lpSvc = (eobject.eResource() != null)
+ ? ServiceUtilsForEObject.getInstance().getService(LabelProviderService.class, eobject)
+ : ServiceUtilsForResourceSet.getInstance().getService(LabelProviderService.class, NestedEditingDialogContext.getInstance().getResourceSet());
+ } catch (ServiceException e) {
+ Activator.log.error(e);
+ }
+ if (null != lpSvc) {
+ return lpSvc.getLabelProvider();
+ }
+ return null;
+ }
/**
* @see org.eclipse.papyrus.infra.nattable.manager.cell.IGenericMatrixRelationshipCellManager#getManagedRelationship()
@@ -546,4 +724,118 @@ public abstract class AbstractUMLGenericMatrixRelationshipCellManager extends Ab
public EClass getManagedRelationship() {
return this.managedElement;
}
+
+ /**
+ *
+ * @author Vincent LORENZO
+ *
+ * This class allows to open a message dialog and to return a command result consistent with the user answer or the MessageDialog kind
+ * TODO move me in an util plugin
+ */
+ private static final class OpenMessageDialogCommand extends AbstractTransactionalCommand {
+
+ /**
+ * The title of the dialog
+ */
+ private final String dialogTitle;
+
+ /**
+ * the message of the dialog
+ */
+ private final String message;
+
+ /**
+ * the type of the dialog
+ */
+ private final int dialogType;
+
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param domain
+ * the editing domain
+ * @param dialogTitle
+ * the dialog title
+ * @param message
+ * the message to display
+ * @param dialogType
+ * the style of dialog:
+ * <ul>
+ * <li>MessageDialog.ERROR: the command result will return a {@link IStatus#ERROR}</li>
+ * <li>MessageDialog.INFORMATION:the command result will return a {@link IStatus#OK}</li>
+ * <li>MessageDialog.QUESTION: the command result will return a {@link IStatus#OK}, with a boolean value (<code>true</code> for Yes button, and <code>false</code> for No button)</li></li>
+ * <li>MessageDialog.WARNING: the command result will return a {@link IStatus#OK}</li>
+ * <li>MessageDialog.CONFIRM: the command result will return a {@link IStatus#CANCEL} for cancel button and {@link IStatus#OK} for OK button</li>
+ * </ul>
+ *
+ */
+ public OpenMessageDialogCommand(final TransactionalEditingDomain domain, final String dialogTitle, final String message, final int dialogType) {
+ super(domain, null, null);
+ this.message = message;
+ this.dialogTitle = dialogTitle;
+ this.dialogType = dialogType;
+ switch (this.dialogType) {
+ case MessageDialog.ERROR:
+ case MessageDialog.INFORMATION:
+ case MessageDialog.QUESTION:
+ case MessageDialog.WARNING:
+ case MessageDialog.CONFIRM:
+ break;// all is ok
+ default:
+ Assert.isLegal(false, NLS.bind("The value {0} is not supported as iconType by this dialog", this.dialogType)); //$NON-NLS-1$
+ break;
+ }
+ }
+
+
+ /**
+ *
+ * @see org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand#doExecuteWithResult(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
+ *
+ * @param monitor
+ * @param info
+ * @return
+ * @throws ExecutionException
+ */
+ protected CommandResult doExecuteWithResult(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
+ final Shell shell = Display.getDefault().getActiveShell();
+
+ switch (this.dialogType) {
+ case MessageDialog.NONE:
+ // not supported
+ break;
+
+ case MessageDialog.ERROR:
+ MessageDialog.openError(shell, dialogTitle, message);
+ return CommandResult.newErrorCommandResult(message); // only ok button
+ case MessageDialog.INFORMATION:
+ MessageDialog.openInformation(shell, dialogTitle, message);// only ok button
+ return CommandResult.newOKCommandResult();
+ case MessageDialog.QUESTION:
+ boolean res = MessageDialog.openQuestion(shell, dialogTitle, message);// return true/false for yes/no button
+ return CommandResult.newOKCommandResult(res);
+
+ case MessageDialog.WARNING:
+ MessageDialog.openWarning(shell, dialogTitle, message);// only OK button
+ return CommandResult.newOKCommandResult();
+
+ case MessageDialog.CONFIRM:
+ res = MessageDialog.openConfirm(shell, dialogTitle, message);// ok and cancel button
+ if (res) {
+ return CommandResult.newOKCommandResult();
+ }
+ return CommandResult.newCancelledCommandResult();
+
+ default:
+ // nothing to do
+ // not possible with the current implementation
+ break;
+ }
+ // not possible with the current implementation
+ return new CommandResult(Status.OK_STATUS);
+ };
+
+ }
}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/Messages.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/Messages.java
index 91e35a2257b..fa0df620463 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/Messages.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/Messages.java
@@ -21,7 +21,19 @@ import org.eclipse.osgi.util.NLS;
*/
public class Messages extends NLS {
private static final String BUNDLE_NAME = "org.eclipse.papyrus.uml.nattable.matrix.messages.messages"; //$NON-NLS-1$
+ public static String AbstractUMLGenericMatrixRelationshipCellManager_CreateRelationshipMessageDialogTitle;
+ public static String AbstractUMLGenericMatrixRelationshipCellManager_RelationshipCanBeCreated;
public static String GenericMatrixRelationshipCellEditorConfiguration_description;
+ public static String RelationshipOwnerValidator_ChosenRelationshipIsAbstract;
+ public static String RelationshipOwnerValidator_ColumnCantbeUsedAsOwner;
+ public static String RelationshipOwnerValidator_ColumnOwnerCantbeUsedAsOwner;
+ public static String RelationshipOwnerValidator_ElementCantBeResolvedAsEObject;
+ public static String RelationshipOwnerValidator_ItIsAPapyrusBug;
+ public static String RelationshipOwnerValidator_NoRelationshipDefined;
+ public static String RelationshipOwnerValidator_RowCantbeUsedAsOwner;
+ public static String RelationshipOwnerValidator_RowOwnerCantbeUsedAsOwner;
+ public static String RelationshipOwnerValidator_TableContextCantbeUsedAsOwner;
+ public static String RelationshipOwnerValidator_TheChosenElementCantBeUsedAsOwner;
static {
// initialize resource bundle
NLS.initializeMessages(BUNDLE_NAME, Messages.class);
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/messages.properties b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/messages.properties
index f675673ad04..00aab38ec58 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/messages.properties
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/messages/messages.properties
@@ -1 +1,13 @@
-GenericMatrixRelationshipCellEditorConfiguration_description=This configuration provides CellEditor, CellPainter and CellConverter used by UML Relationship matrix
+AbstractUMLGenericMatrixRelationshipCellManager_CreateRelationshipMessageDialogTitle=Create Relationship
+AbstractUMLGenericMatrixRelationshipCellManager_RelationshipCanBeCreated=The {0} relationship can't be created between {1} and {2}, with {3} as owner, as expected with the chosen owner strategy.\nError Message:\n\t{4}.
+GenericMatrixRelationshipCellEditorConfiguration_description=This configuration provides CellEditor, CellPainter and CellConverter used by UML Relationship matrix.
+RelationshipOwnerValidator_ChosenRelationshipIsAbstract=The relationship to create is an abstract.
+RelationshipOwnerValidator_ColumnCantbeUsedAsOwner=The column {0} can't be used as owner for the created relationship.
+RelationshipOwnerValidator_ColumnOwnerCantbeUsedAsOwner=The column's owner {0} can't be used as owner for the created relationship.
+RelationshipOwnerValidator_ElementCantBeResolvedAsEObject=The element {0} can't be resolved as an EObject.
+RelationshipOwnerValidator_ItIsAPapyrusBug=If you read this message, it is a Papyrus Bug. Please fill a bug with your model.
+RelationshipOwnerValidator_NoRelationshipDefined=There is no relationship defined.
+RelationshipOwnerValidator_RowCantbeUsedAsOwner=The row {0} can't be used as owner for the created relationship.
+RelationshipOwnerValidator_RowOwnerCantbeUsedAsOwner=The row's owner {0} can't be used as owner for the created relationship.
+RelationshipOwnerValidator_TableContextCantbeUsedAsOwner=The table context (Root Element) {0} can't be used as owner for the created relationship.
+RelationshipOwnerValidator_TheChosenElementCantBeUsedAsOwner=The chosen element {0} can't be used as owner for the created relationship.
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/validator/RelationshipOwnerValidator.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/validator/RelationshipOwnerValidator.java
new file mode 100644
index 00000000000..ff447ec3ccd
--- /dev/null
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.matrix/src/org/eclipse/papyrus/uml/nattable/matrix/validator/RelationshipOwnerValidator.java
@@ -0,0 +1,191 @@
+/*****************************************************************************
+ * Copyright (c) 2018 CEA LIST and others.
+ *
+ * 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:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.matrix.validator;
+
+import org.eclipse.core.databinding.validation.IValidator;
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
+import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForResourceSet;
+import org.eclipse.papyrus.infra.nattable.manager.table.IMatrixTableWidgetManager;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattableaxis.EObjectTreeItemAxis;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.GenericRelationshipMatrixCellEditorConfiguration;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.EObjectWrapper;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
+import org.eclipse.papyrus.infra.types.ElementTypeConfiguration;
+import org.eclipse.papyrus.infra.types.MetamodelTypeConfiguration;
+import org.eclipse.papyrus.infra.ui.emf.dialog.NestedEditingDialogContext;
+import org.eclipse.papyrus.uml.nattable.matrix.Activator;
+import org.eclipse.papyrus.uml.nattable.matrix.messages.Messages;
+
+/**
+ * @author Vincent LORENZO
+ *
+ * This class provides a validate method to check the used owner during a relationship's creation. We assume the checked object is compliant with the strategy defined by the user.
+ * If not, the returned message in the returned status will be invalid!!!
+ *
+ */
+public class RelationshipOwnerValidator implements IValidator {
+
+
+ /**
+ * the cell editor configuration of the current matrix
+ */
+ private final GenericRelationshipMatrixCellEditorConfiguration conf;
+
+ /**
+ * Constructor.
+ *
+ */
+ public RelationshipOwnerValidator(final IMatrixTableWidgetManager matrixManager) {
+ this.conf = (GenericRelationshipMatrixCellEditorConfiguration) matrixManager.getTable().getOwnedCellEditorConfigurations();
+ }
+
+ /**
+ *
+ * @param message
+ * the message to set in the error IStatus
+ * @return
+ * the created IStatus error
+ */
+ private final IStatus createErrorStatus(final String message) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, message);
+ }
+
+ /**
+ * @see org.eclipse.core.databinding.validation.IValidator#validate(java.lang.Object)
+ *
+ * @param value
+ * a value to validate. We assume the value to check is consistent with the owner strategy mode defined in the {@link GenericRelationshipMatrixCellEditorConfiguration}.
+ * If not the returned message will be probably invalid!!!!
+ * @return
+ */
+ @Override
+ public IStatus validate(final Object value) {
+ EObject realEObject = null;
+ if (value instanceof EObjectWrapper) {
+ realEObject = ((EObjectWrapper) value).getElement();
+ } else if (value instanceof EObjectTreeItemAxis) {
+ realEObject = ((EObjectTreeItemAxis) value).getElement();
+ } else if (value instanceof EObject) {
+ realEObject = (EObject) value;
+ }
+
+ if (null == realEObject) {
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_ElementCantBeResolvedAsEObject, value));
+ }
+
+ final IStatus relationshipDefinition = hasADefinedRelationship();
+ if (false == relationshipDefinition.isOK()) {
+ return relationshipDefinition;
+ }
+
+ boolean hasAValidFeature = hasFeatureAcceptingRelationShip(realEObject);
+ // We assume the value to check is consistent with the owner strategy mode defined in the {@link GenericRelationshipMatrixCellEditorConfiguration}.
+ // If not the returned message will be probably invalid!!!!
+ if (false == hasAValidFeature) {
+ final ILabelProvider labelProvider = getLabelProvider(realEObject);
+ final String realObjectLabel = null != labelProvider ? labelProvider.getText(realEObject) : realEObject.toString();
+
+ switch (conf.getRelationshipOwnerStrategy()) {
+ case COLUMN_AS_OWNER:
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_ColumnCantbeUsedAsOwner, realObjectLabel));
+ case COLUMN_OWNER:
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_ColumnOwnerCantbeUsedAsOwner, realObjectLabel));
+ case DEFAULT:
+ // we hope it never appears!
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_ItIsAPapyrusBug, realObjectLabel));
+ case OTHER:
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_TheChosenElementCantBeUsedAsOwner, realObjectLabel));
+ case ROW_AS_OWNER:
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_RowCantbeUsedAsOwner, realObjectLabel));
+ case ROW_OWNER:
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_RowOwnerCantbeUsedAsOwner, realObjectLabel));
+ case TABLE_CONTEXT:
+ return createErrorStatus(NLS.bind(Messages.RelationshipOwnerValidator_TableContextCantbeUsedAsOwner, realObjectLabel));
+ default:
+ break;
+ }
+ }
+ return Status.OK_STATUS;
+ }
+
+ /**
+ *
+ * @return
+ * a IStatus indicating if the relationship is defined and valid or not
+ */
+ private final IStatus hasADefinedRelationship() {
+ final ElementTypeConfiguration etc = this.conf.getEditedElement();
+ if (null == etc) {
+ return createErrorStatus(Messages.RelationshipOwnerValidator_NoRelationshipDefined);
+ }
+ final EClass eclass = ((MetamodelTypeConfiguration) etc).getEClass();
+ if (eclass.isAbstract()) {
+ return createErrorStatus(Messages.RelationshipOwnerValidator_ChosenRelationshipIsAbstract); // very unlucky case, probably impossible
+ }
+ return Status.OK_STATUS;
+ }
+
+
+ /**
+ *
+ * @param wantedOwner
+ * the wanted owner for the created relationship
+ * @return
+ * <code>true</code> if the wanted owner has a feature accepting the created relationship
+ */
+ private final boolean hasFeatureAcceptingRelationShip(final EObject wantedOwner) {
+ Assert.isNotNull(wantedOwner);
+ final ElementTypeConfiguration etc = this.conf.getEditedElement();
+ final EClass eclass = ((MetamodelTypeConfiguration) etc).getEClass();
+ final EObject dummyRelationship = eclass.getEPackage().getEFactoryInstance().create(eclass);
+ for (EStructuralFeature current : wantedOwner.eClass().getEAllContainments()) {
+ if (current.getEType().isInstance(dummyRelationship)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ *
+ * @param eobject
+ * an eobject
+ * @return
+ * the label provider to use
+ */
+ private final ILabelProvider getLabelProvider(final EObject eobject) {
+ LabelProviderService lpSvc = null;
+ try {
+ lpSvc = (eobject.eResource() != null)
+ ? ServiceUtilsForEObject.getInstance().getService(LabelProviderService.class, eobject)
+ : ServiceUtilsForResourceSet.getInstance().getService(LabelProviderService.class, NestedEditingDialogContext.getInstance().getResourceSet());
+ } catch (ServiceException e) {
+ Activator.log.error(e);
+ }
+ if (null != lpSvc) {
+ return lpSvc.getLabelProvider();
+ }
+ return null;
+ }
+
+}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/META-INF/MANIFEST.MF
index 514c1ec0a52..7c6b1cfc80f 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/META-INF/MANIFEST.MF
@@ -3,11 +3,11 @@ Export-Package: org.eclipse.papyrus.uml.nattable.menu,
org.eclipse.papyrus.uml.nattable.menu.handlers,
org.eclipse.papyrus.uml.nattable.menu.messages,
org.eclipse.papyrus.uml.nattable.menu.util
-Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)",
+Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.uml.service.types.ui;bundle-version="[2.0.0,3.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.2.0.qualifier
+Bundle-Version: 1.2.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.uml.nattable.menu.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/pom.xml
index a3256fa12fd..e12959951ae 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.menu/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.menu</artifactId>
- <version>1.2.0-SNAPSHOT</version>
+ <version>1.2.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/META-INF/MANIFEST.MF
index 29931cf27a0..3ace5510a24 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/META-INF/MANIFEST.MF
@@ -2,10 +2,10 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.eclipse.papyrus.uml.nattable.properties;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-Vendor: %Bundle-Vendor
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0]",
+Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0]",
org.eclipse.papyrus.infra.nattable.model;bundle-version="2.0.0",
org.eclipse.papyrus.infra.properties;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.nattable.properties;bundle-version="[2.2.0,3.0.0)",
@@ -13,10 +13,10 @@ Require-Bundle: org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0]
org.eclipse.papyrus.infra.properties.ui;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.emf.gmf;bundle-version="[1.2.100,2.0.0)",
org.eclipse.papyrus.infra.services.edit;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)",
org.eclipse.uml2.uml;bundle-version="[5.3.0,6.0.0)",
org.eclipse.papyrus.infra.types.core;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.uml.expressions;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.infra.emf.expressions.properties;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)"
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/pom.xml
index cbd74c828a2..6dadb9dad16 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/pom.xml
@@ -8,7 +8,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.properties</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
<description>This plugin provides properties views specialized for Papyrus UML Table.</description>
</project>
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/GenericUMLRelationshipMatrix.ctx b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/GenericUMLRelationshipMatrix.ctx
index 0b23b408048..bbc89b8560f 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/GenericUMLRelationshipMatrix.ctx
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/GenericUMLRelationshipMatrix.ctx
@@ -20,6 +20,9 @@
<properties xmi:id="_TDc0ISwOEeeKOdJYr-htag" name="managedElementType" type="Reference"/>
<properties xmi:id="_TDc0IiwOEeeKOdJYr-htag" name="relationshipDirection" type="Enumeration"/>
<properties xmi:id="_7ml2MCwPEeeKOdJYr-htag" name="cellContentsFilter" type="Reference"/>
+ <properties xmi:id="_TDc0IiwOEeeKOdJYr-htag" name="relationshipOwnerStrategy" type="Enumeration"/>
+ <properties xmi:id="_qWk8YCwOEeeKOdJYr-htag" name="relationshipOwner" type="Reference"/>
+ <properties xmi:id="_qWk8YCwOEeeKOdJYr-htag" name="relationshipOwnerFeature" type="Reference"/>
</elements>
<modelElementFactory href="Environment.xmi#//@modelElementFactories.0"/>
</dataContexts>
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/ui/Matrix.xwt b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/ui/Matrix.xwt
index 1f1c197ecae..477147998e3 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/ui/Matrix.xwt
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/properties/ui/Matrix.xwt
@@ -48,4 +48,15 @@
property="GenericUMLRelationshipMatrixDataContext:GenericRelationshipMatrixCellEditorConfiguration:cellContentsFilter"
customLabel="Contents Filter"></ppe:ReferenceDialog>
</Group>
+ <Group text="Relation Owner">
+ <Group.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Group.layout>
+ <ppe:EnumCombo input="{Binding}"
+ property="GenericUMLRelationshipMatrixDataContext:GenericRelationshipMatrixCellEditorConfiguration:relationshipOwnerStrategy"
+ customLabel="Owner Strategy"></ppe:EnumCombo>
+ <ppe:ReferenceDialog input="{Binding}"
+ property="GenericUMLRelationshipMatrixDataContext:GenericRelationshipMatrixCellEditorConfiguration:relationshipOwner"
+ customLabel="Relation Owner"></ppe:ReferenceDialog>
+ </Group>
</Composite> \ No newline at end of file
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/modelelements/GenericUMLRelationshipMatrixModelElement.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/modelelements/GenericUMLRelationshipMatrixModelElement.java
index 21ebbf15c24..ddae1fce18e 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/modelelements/GenericUMLRelationshipMatrixModelElement.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/modelelements/GenericUMLRelationshipMatrixModelElement.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2017 CEA LIST and others.
+ * Copyright (c) 2017, 2018 CEA LIST and others.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -8,7 +8,7 @@
*
* Contributors:
* Vincent LORENZO (CEA-LIST) vincent.lorenzo@cea.fr - Initial API and implementation
- *
+ * Vincent Lorenzo (CEA LIST) - vincent.lorenzo@cea.fr - Bug 532639
*****************************************************************************/
package org.eclipse.papyrus.uml.nattable.properties.modelelements;
@@ -18,6 +18,7 @@ import java.util.Iterator;
import java.util.List;
import org.eclipse.core.databinding.observable.IObservable;
+import org.eclipse.core.databinding.validation.IValidator;
import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.impl.AdapterImpl;
@@ -29,8 +30,9 @@ import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.ILabelProviderListener;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanEObjectExpression;
import org.eclipse.papyrus.infra.emf.expressions.properties.utils.BooleanEObjectExpressionPropertyEditorFactory;
-import org.eclipse.papyrus.infra.nattable.contentprovider.MatrixSourcesContentProvider;
import org.eclipse.papyrus.infra.nattable.contentprovider.MatrixDirectionContentProvider;
+import org.eclipse.papyrus.infra.nattable.contentprovider.MatrixRelationshipOwnerStrategyContentProvider;
+import org.eclipse.papyrus.infra.nattable.contentprovider.MatrixSourcesContentProvider;
import org.eclipse.papyrus.infra.nattable.manager.table.IMatrixTableWidgetManager;
import org.eclipse.papyrus.infra.nattable.model.nattable.NattablePackage;
import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
@@ -47,17 +49,20 @@ import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.ICel
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.EObjectWrapper;
import org.eclipse.papyrus.infra.nattable.provider.MatrixRelationshipDirectionLabelProvider;
+import org.eclipse.papyrus.infra.nattable.provider.MatrixRelationshipOwnerStrategyLabelProvider;
import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
import org.eclipse.papyrus.infra.widgets.creation.ReferenceValueFactory;
import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
import org.eclipse.papyrus.uml.expressions.umlexpressions.UMLExpressionsPackage;
import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixCellContentsFilterObservableValue;
-import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixColumnSourcesEMFObservableList;
import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixColumnRootFilterObservableValue;
+import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixColumnSourcesEMFObservableList;
import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixDirectionObservableValue;
import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixManagedElementTypeObservableValue;
-import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixRowSourcesEMFObservableList;
+import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixRelationshipOwnerStrategyObservableValue;
+import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixRelationshipOwneryObservableValue;
import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixRowRootFilterObservableValue;
+import org.eclipse.papyrus.uml.nattable.properties.observables.MatrixRowSourcesEMFObservableList;
import org.eclipse.papyrus.uml.nattable.properties.providers.GenericRelationshipMatrixElementTypeContentProvider;
import org.eclipse.papyrus.uml.nattable.properties.providers.GenericRelationshipMatrixElementTypeLabelProvider;
import org.eclipse.papyrus.uml.nattable.properties.utils.MatrixPropertyConstants;
@@ -120,7 +125,8 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
this.interestingFeatures.add(NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_CellContentsFilter());
this.interestingFeatures.add(NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_Direction());
this.interestingFeatures.add(NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_EditedElement());
-
+ this.interestingFeatures.add(NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner());
+ this.interestingFeatures.add(NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy());
this.changeListener = new AdapterImpl() {
@@ -314,6 +320,10 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
value = new MatrixDirectionObservableValue(getEditedTable());
} else if (MatrixPropertyConstants.MATRIX_CELL_FILTER.equals(propertyPath)) {
value = new MatrixCellContentsFilterObservableValue(getEditedTable());
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER_STRATEGY.equals(propertyPath)) {
+ value = new MatrixRelationshipOwnerStrategyObservableValue(getEditedTable());
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER.equals(propertyPath)) {
+ value = new MatrixRelationshipOwneryObservableValue(getEditedTable());
} else {
value = super.doGetObservable(propertyPath);
}
@@ -338,6 +348,10 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
provider = new GenericRelationshipMatrixElementTypeContentProvider(getRoot(getEditedTable().getContext()));
} else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_DIRECTION.equals(propertyPath)) {
provider = new MatrixDirectionContentProvider();
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER_STRATEGY.equals(propertyPath)) {
+ provider = new MatrixRelationshipOwnerStrategyContentProvider();
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER.equals(propertyPath)) {
+ provider = new MatrixSourcesContentProvider(getRoot(getEditedTable().getContext()));
} else {
provider = super.getContentProvider(propertyPath);
}
@@ -354,18 +368,18 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
public EStructuralFeature getFeature(final String propertyPath) {
if (MatrixPropertyConstants.MATRIX_ROW_FILTER.equals(propertyPath) || MatrixPropertyConstants.MATRIX_COLUMN_FILTER.equals(propertyPath)) {
return NattableaxisconfigurationPackage.eINSTANCE.getTreeFillingConfiguration_FilterRule();
- }
- if (MatrixPropertyConstants.MATRIX_ROW_SOURCES.equals(propertyPath) || MatrixPropertyConstants.MATRIX_COLUMN_SOURCES.equals(propertyPath)) {
+ } else if (MatrixPropertyConstants.MATRIX_ROW_SOURCES.equals(propertyPath) || MatrixPropertyConstants.MATRIX_COLUMN_SOURCES.equals(propertyPath)) {
return NattableaxisproviderPackage.eINSTANCE.getIMasterAxisProvider_Sources();
- }
- if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_DIRECTION.equals(propertyPath)) {
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_DIRECTION.equals(propertyPath)) {
return NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_Direction();
- }
- if (MatrixPropertyConstants.MATRIX_CELL_TYPE.equals(propertyPath)) {
+ } else if (MatrixPropertyConstants.MATRIX_CELL_TYPE.equals(propertyPath)) {
return NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_EditedElement();
- }
- if (MatrixPropertyConstants.MATRIX_CELL_FILTER.equals(propertyPath)) {
+ } else if (MatrixPropertyConstants.MATRIX_CELL_FILTER.equals(propertyPath)) {
return NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_CellContentsFilter();
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER_STRATEGY.equals(propertyPath)) {
+ return NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy();
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER.equals(propertyPath)) {
+ return NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner();
}
return super.getFeature(propertyPath);
}
@@ -397,12 +411,17 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
@Override
public ILabelProvider getLabelProvider(String propertyPath) {
ILabelProvider provider = super.getLabelProvider(propertyPath);
- if (MatrixPropertyConstants.MATRIX_COLUMN_SOURCES.equals(propertyPath) || MatrixPropertyConstants.MATRIX_ROW_SOURCES.equals(propertyPath)) {
+ if (MatrixPropertyConstants.MATRIX_COLUMN_SOURCES.equals(propertyPath)
+ || MatrixPropertyConstants.MATRIX_ROW_SOURCES.equals(propertyPath)
+ || MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER.equals(propertyPath)) {
provider = new WrappedLabelProvider(provider);
}
if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_DIRECTION.equals(propertyPath)) {
provider = new MatrixRelationshipDirectionLabelProvider();
}
+ if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER_STRATEGY.equals(propertyPath)) {
+ provider = new MatrixRelationshipOwnerStrategyLabelProvider();
+ }
if (MatrixPropertyConstants.MATRIX_CELL_TYPE.equals(propertyPath)) {
provider = new GenericRelationshipMatrixElementTypeLabelProvider();
}
@@ -440,6 +459,9 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
if (MatrixPropertyConstants.MATRIX_ROW_SOURCES.equals(propertyPath) || MatrixPropertyConstants.MATRIX_COLUMN_SOURCES.equals(propertyPath)) {
return false;// it is a containment feature, but we need to open a dialog to wrapper the selected element
}
+ if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER.equals(propertyPath)) {
+ return false;// it is a containment feature, but we need to open a dialog to wrapper the selected element
+ }
return super.getDirectCreation(propertyPath);
}
@@ -464,6 +486,8 @@ public class GenericUMLRelationshipMatrixModelElement extends EMFModelElement {
factory.setNsUri(UMLExpressionsPackage.eNS_URI);
return factory;
}
+ } else if (MatrixPropertyConstants.MATRIX_RELATIONSHIP_OWNER.equals(propertyPath)) {
+ return null;// to remove the green plus
}
return super.getValueFactory(propertyPath);
}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/AbstractMatrixRelationshipCellEditorConfigurationObservableValue.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/AbstractMatrixRelationshipCellEditorConfigurationObservableValue.java
index 1a0ecc9a46d..ab9f2f200da 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/AbstractMatrixRelationshipCellEditorConfigurationObservableValue.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/AbstractMatrixRelationshipCellEditorConfigurationObservableValue.java
@@ -88,7 +88,7 @@ public abstract class AbstractMatrixRelationshipCellEditorConfigurationObservabl
* @param value
*/
@Override
- protected final void doSetValue(Object value) {
+ protected void doSetValue(Object value) {
final Command setCommand = SetCommand.create(this.domain, getEditedEObject(), getManagedFeature(), value);
if (setCommand.canExecute()) {
this.domain.getCommandStack().execute(setCommand);
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwnerStrategyObservableValue.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwnerStrategyObservableValue.java
new file mode 100644
index 00000000000..48d0a0e2a9c
--- /dev/null
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwnerStrategyObservableValue.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * Copyright (c) 2018 CEA LIST and others.
+ *
+ * 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:
+ * Vincent LORENZO (CEA-LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.nattable.properties.observables;
+
+import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
+import org.eclipse.papyrus.infra.nattable.utils.TableEditingDomainUtils;
+
+
+/**
+ * Observable for the owner strategy of the relationships to create and display feature
+ */
+public class MatrixRelationshipOwnerStrategyObservableValue extends AbstractMatrixRelationshipCellEditorConfigurationObservableValue {
+
+ /**
+ * Constructor.
+ *
+ * @param domain
+ * The current editing domain.
+ * @param table
+ * The managed table.
+ */
+ public MatrixRelationshipOwnerStrategyObservableValue(final Table table) {
+ super(TableEditingDomainUtils.getTableEditingDomain(table), table, NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwnerStrategy());
+ }
+
+}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwneryObservableValue.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwneryObservableValue.java
new file mode 100644
index 00000000000..357039dc288
--- /dev/null
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/observables/MatrixRelationshipOwneryObservableValue.java
@@ -0,0 +1,73 @@
+/*****************************************************************************
+ * Copyright (c) 2018 CEA LIST and others.
+ *
+ * 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:
+ * Vincent LORENZO (CEA-LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.properties.observables;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablecelleditor.NattablecelleditorPackage;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.EObjectWrapper;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.IWrapper;
+import org.eclipse.papyrus.infra.nattable.model.nattable.nattablewrapper.NattablewrapperFactory;
+import org.eclipse.papyrus.infra.nattable.utils.TableEditingDomainUtils;
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * @author Vincent LORENZO
+ *
+ */
+public class MatrixRelationshipOwneryObservableValue extends AbstractMatrixRelationshipCellEditorConfigurationObservableValue {
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param table
+ * the edited table
+ */
+ public MatrixRelationshipOwneryObservableValue(final Table table) {
+ super(TableEditingDomainUtils.getTableEditingDomain(table), table, NattablecelleditorPackage.eINSTANCE.getGenericRelationshipMatrixCellEditorConfiguration_RelationshipOwner());
+ }
+
+ /**
+ * @see org.eclipse.papyrus.uml.nattable.properties.observables.AbstractMatrixRelationshipCellEditorConfigurationObservableValue#doGetValue()
+ *
+ * @return
+ */
+ @Override
+ protected Object doGetValue() {
+ Object res = super.doGetValue();
+ if (res instanceof IWrapper) {
+ res = ((IWrapper) res).getElement();// it seems the reference dialog is not able to propagate it as initial selection, so this line is useless
+ }
+ return res;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.uml.nattable.properties.observables.AbstractMatrixRelationshipCellEditorConfigurationObservableValue#doSetValue(java.lang.Object)
+ *
+ * @param value
+ */
+ @Override
+ protected void doSetValue(Object value) {
+ if (value instanceof Element) {
+ final EObjectWrapper wrapper = NattablewrapperFactory.eINSTANCE.createEObjectWrapper();
+ wrapper.setElement((EObject) value);
+ value = wrapper;
+ }
+ super.doSetValue(value);
+ }
+
+
+
+}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/utils/MatrixPropertyConstants.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/utils/MatrixPropertyConstants.java
index df53df35bf0..8c763258158 100755
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/utils/MatrixPropertyConstants.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.properties/src/org/eclipse/papyrus/uml/nattable/properties/utils/MatrixPropertyConstants.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2017 CEA LIST and others.
+ * Copyright (c) 2017, 2018 CEA LIST and others.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -8,7 +8,7 @@
*
* Contributors:
* Vincent LORENZO (CEA-LIST) vincent.lorenzo@cea.fr - Initial API and implementation
- *
+ * Vincent Lorenzo (CEA LIST) - vincent.lorenzo@cea.fr - Bug 532639
*****************************************************************************/
package org.eclipse.papyrus.uml.nattable.properties.utils;
@@ -37,4 +37,12 @@ public class MatrixPropertyConstants {
public static final String MATRIX_CELL_FILTER = "cellContentsFilter";//$NON-NLS-1$
public static final String MATRIX_RELATIONSHIP_DIRECTION = "relationshipDirection";//$NON-NLS-1$
+
+ public static final String MATRIX_RELATIONSHIP_OWNER = "relationshipOwner";//$NON-NLS-1$
+
+ public static final String MATRIX_RELATIONSHIP_OWNER_STRATEGY = "relationshipOwnerStrategy";//$NON-NLS-1$
+
+ // defined but not yet used
+ public static final String MATRIX_RELATIONSHIP_OWNER_FEATURE = "relationshipOwnerFeature";//$NON-NLS-1$
+
}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.richtext/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.richtext/META-INF/MANIFEST.MF
index f0fd842bde6..289b0e800dd 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.richtext/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.richtext/META-INF/MANIFEST.MF
@@ -9,12 +9,12 @@ Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.papyrus.uml.nattable.richtext;singleton:=true
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Require-Bundle: org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)",
org.eclipse.uml2.uml;bundle-version="[5.3.0,6.0.0)",
org.eclipse.nebula.widgets.nattable.extension.nebula;bundle-version="[1.0.0,2.0.0)",
org.eclipse.nebula.widgets.richtext;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.uml.tools;bundle-version="[4.0.0,5.0.0)",
org.eclipse.papyrus.uml.ui;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.papyrus.uml.nattable;bundle-version="[4.0.0,5.0.0)"
+ org.eclipse.papyrus.uml.nattable;bundle-version="[5.0.0,6.0.0)"
Export-Package: org.eclipse.papyrus.uml.nattable.richtext.celleditor.config
Bundle-Description: %Bundle-Description
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/META-INF/MANIFEST.MF
index 9c0a2f2c98d..f54e1c53a0c 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.nebula.widgets.nattable.extension.glazedlists;bundle-version="[1.5.0,2.0.0)",
org.eclipse.papyrus.uml.diagram.common;bundle-version="[3.0.0,4.0.0)",
- org.eclipse.papyrus.uml.nattable;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.nattable;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.uml.internationalization.utils;bundle-version="[1.0.0,2.0.0)"
Export-Package: org.eclipse.papyrus.uml.nattable.stereotype.display,
org.eclipse.papyrus.uml.nattable.stereotype.display.configuration,
@@ -11,7 +11,7 @@ Export-Package: org.eclipse.papyrus.uml.nattable.stereotype.display,
org.eclipse.papyrus.uml.nattable.stereotype.display.utils
Bundle-Vendor: Eclipse Modeling Project
Bundle-ActivationPolicy: lazy
-Bundle-Version: 3.0.0.qualifier
+Bundle-Version: 3.0.100.qualifier
Bundle-Name: Stereotype Display Table
Bundle-ManifestVersion: 2
Bundle-Activator: org.eclipse.papyrus.uml.nattable.stereotype.display.Activator
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/pom.xml
index f993d41010f..e1d36746c90 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.stereotype.display/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.stereotype.display</artifactId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>3.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/META-INF/MANIFEST.MF
index 57229ec9ad3..4034ab8aa4c 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/META-INF/MANIFEST.MF
@@ -2,11 +2,11 @@ Manifest-Version: 1.0
Export-Package: org.eclipse.papyrus.uml.nattable.xtext.integration,
org.eclipse.papyrus.uml.nattable.xtext.integration.celleditor,
org.eclipse.papyrus.uml.nattable.xtext.integration.util
-Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[4.0.0,5.0.0)",
+Require-Bundle: org.eclipse.papyrus.infra.nattable.common;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.uml.xtext.integration.ui;bundle-version="[2.0.0,3.0.0)";visibility:=reexport
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 2.0.0.qualifier
+Bundle-Version: 2.0.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.uml.nattable.xtext.integration.Activator
Bundle-ManifestVersion: 2
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/pom.xml
index d93ff48f83f..5b2549261f2 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.integration/pom.xml
@@ -7,6 +7,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.xtext.integration</artifactId>
- <version>2.0.0-SNAPSHOT</version>
+ <version>2.0.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/META-INF/MANIFEST.MF
index 31b28e89e44..dbd52249e21 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/META-INF/MANIFEST.MF
@@ -1,5 +1,5 @@
Manifest-Version: 1.0
-Require-Bundle: org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
+Require-Bundle: org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)";visibility:=reexport,
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.uml.textedit.valuespecification.xtext.utils;bundle-version="[1.2.0,2.0.0)",
org.eclipse.papyrus.uml.textedit.valuespecification.xtext.ui;bundle-version="[2.0.0,3.0.0)",
@@ -9,7 +9,7 @@ Export-Package: org.eclipse.papyrus.uml.nattable.xtext.valuespecification,
org.eclipse.papyrus.uml.nattable.xtext.valuespecification.manager.cell
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
-Bundle-Version: 4.0.0.qualifier
+Bundle-Version: 5.0.0.qualifier
Bundle-Name: %pluginName
Bundle-Localization: plugin
Bundle-Activator: org.eclipse.papyrus.uml.nattable.xtext.valuespecification.Activator
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/pom.xml
index 87ac6f7a864..eb98f64af65 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.xtext.valuespecification/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable.xtext.valuespecification</artifactId>
- <version>4.0.0-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF
index 25ddd9a7677..215fdac165c 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF
@@ -13,14 +13,14 @@ Export-Package: org.eclipse.papyrus.uml.nattable,
org.eclipse.papyrus.uml.nattable.validator,
org.eclipse.papyrus.uml.nattable.widget
Require-Bundle: org.eclipse.papyrus.uml.tools;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)";visibility:=reexport,
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)";visibility:=reexport,
org.eclipse.papyrus.uml.tools.utils;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.uml.internationalization.utils;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.infra.properties.ui;bundle-version="[3.0.0,4.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 4.0.100.qualifier
+Bundle-Version: 5.0.0.qualifier
Bundle-Name: %Bundle-Name
Bundle-Localization: plugin
Bundle-Activator: org.eclipse.papyrus.uml.nattable.Activator
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/pom.xml b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/pom.xml
index 4df401f4f09..48b2b3f55e1 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/pom.xml
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.nattable</artifactId>
- <version>4.0.100-SNAPSHOT</version>
+ <version>5.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF
index 8c2b02e950d..0119f99ffa6 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF
@@ -26,11 +26,11 @@ Require-Bundle: org.eclipse.papyrus.uml.profile;bundle-version="[3.0.0,4.0.0)";v
org.eclipse.papyrus.uml.appearance;bundle-version="[2.0.0,3.0.0)",
org.eclipse.papyrus.uml.diagram.common;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
org.eclipse.papyrus.uml.diagram.stereotype.edition;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.emf.nattable;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.nattable;bundle-version="[5.0.0,6.0.0)",
org.eclipse.papyrus.uml.nattable.stereotype.display;bundle-version="[3.0.0,4.0.0)",
org.eclipse.nebula.widgets.richtext;bundle-version="[1.0.0,2.0.0)",
org.eclipse.papyrus.uml.ui;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.papyrus.infra.nattable;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.infra.nattable;bundle-version="[6.0.0,7.0.0)",
org.eclipse.jface;bundle-version="[3.12.0,4.0.0)",
org.eclipse.papyrus.infra.widgets;bundle-version="[3.1.0,4.0.0)",
org.eclipse.papyrus.infra.internationalization.utils;bundle-version="[1.0.0,2.0.0)",
@@ -38,7 +38,7 @@ Require-Bundle: org.eclipse.papyrus.uml.profile;bundle-version="[3.0.0,4.0.0)";v
org.eclipse.papyrus.infra.internationalization;bundle-version="[1.0.0,2.0.0)"
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy;exclude:="org.eclipse.papyrus.uml.properties.constraints"
-Bundle-Version: 3.1.0.qualifier
+Bundle-Version: 3.1.100.qualifier
Bundle-Name: %pluginName
Bundle-Localization: plugin
Bundle-Activator: org.eclipse.papyrus.uml.properties.Activator
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/pom.xml b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/pom.xml
index 7e68d88667f..8364f33f743 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/pom.xml
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/pom.xml
@@ -8,6 +8,6 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.uml.properties</artifactId>
- <version>3.1.0-SNAPSHOT</version>
+ <version>3.1.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project> \ No newline at end of file

Back to the top