Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'tests/junit')
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/META-INF/MANIFEST.MF3
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.di2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.notation83
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.uml102
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_Initial.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultCopy.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.di2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.notation2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.uml73
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.di2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.notation80
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.uml49
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_Initial.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultCopy.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.di2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.notation80
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.uml49
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_Initial.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultCopy.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.di2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.notation80
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.uml49
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_Initial.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultCopy.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.di2
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.notation80
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.uml49
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_Initial.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultCopy.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementDown.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementUp.txt51
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/AbstractFillHandleTest.java439
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleInteger_V1_V3_V1_Test.java128
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.java121
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.java128
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.java128
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.java128
-rw-r--r--tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/tests/AllTests.java12
56 files changed, 3404 insertions, 1 deletions
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/META-INF/MANIFEST.MF b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/META-INF/MANIFEST.MF
index 7f88b1333d8..1919300de40 100644
--- a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/META-INF/MANIFEST.MF
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/META-INF/MANIFEST.MF
@@ -28,7 +28,8 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.emf.facet.custom.metamodel;bundle-version="1.2.0",
org.eclipse.papyrus.infra.services.validation;bundle-version="1.2.0",
org.eclipse.papyrus.infra.ui;bundle-version="1.2.0",
- org.eclipse.papyrus.infra.core.sashwindows.di;bundle-version="1.2.0"
+ org.eclipse.papyrus.infra.core.sashwindows.di;bundle-version="1.2.0",
+ org.eclipse.swt
Export-Package: org.eclipse.papyrus.uml.nattable.clazz.config.tests,
org.eclipse.papyrus.uml.nattable.clazz.config.tests.tests
Bundle-Vendor: %Bundle-Vendor
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.di b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.di
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.notation b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.notation
new file mode 100644
index 00000000000..129a6f66769
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.notation
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nattable:Table xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:nattablelabelprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider http://www.eclipse.org/papyrus/nattable/model#//nattablelabelprovider" xmi:id="_0tdPAHcSEeSOKsM2DkqZ0A" name="ClassTreeTable" currentRowAxisProvider="_0tdPA3cSEeSOKsM2DkqZ0A" currentColumnAxisProvider="_0tdPAXcSEeSOKsM2DkqZ0A">
+ <context xmi:type="uml:Model" href="FillHandleInteger_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <owner xmi:type="uml:Model" href="FillHandleInteger_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <prototype xmi:type="configuration:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/classTreeTable.configuration#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_0tdPAXcSEeSOKsM2DkqZ0A" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+ <axis xmi:type="nattableaxis:FeatureIdAxis" xmi:id="_LPjFsMT5EeWRgPxoFzdn1A" element="property_of_stereotype:/RootElement::Stereotype1::Integer">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.1"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Yk1o8mZzEeSDCaDFwPGYVw">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9OSsHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/visibility"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/isLeaf"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wXrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Parameter/direction"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_0tdPA3cSEeSOKsM2DkqZ0A" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowaAxisManager" disconnectSlave="true"/>
+ <localRowHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_yZauQHl4EeWqi9yWvPfrQQ" indexStyle="NUMERIC">
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNWnmiEeWJ7-W-e5W1og" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNUXmiEeWJ7-W-e5W1og" alias="Class">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNW3miEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNU3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXHmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNVXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXXmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNV3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNWHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXnmiEeWJ7-W-e5W1og" depth="2" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNWXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNWnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ <axisIdentifier xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_H1ZVkHmjEeWJ7-W-e5W1og">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axisIdentifier>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNW3miEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Property">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXHmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXXmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Operation">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Parameter">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </ownedAxisConfigurations>
+ <axisManagerConfigurations xmi:type="nattableaxisconfiguration:AxisManagerConfiguration" xmi:id="_SBHYIHmiEeWJ7-W-e5W1og" localSpecificConfigurations="_SBJNUHmiEeWJ7-W-e5W1og _SBJNUnmiEeWJ7-W-e5W1og _SBJNVHmiEeWJ7-W-e5W1og _SBJNVnmiEeWJ7-W-e5W1og _SBJNWHmiEeWJ7-W-e5W1og">
+ <axisManager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ </axisManagerConfigurations>
+ </localRowHeaderAxisConfiguration>
+</nattable:Table>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.uml b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.uml
new file mode 100644
index 00000000000..080da93f249
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.uml
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:RootElement="http:///schemas/RootElement/_t8whEMT4EeWRgPxoFzdn1A/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http:///schemas/RootElement/_t8whEMT4EeWRgPxoFzdn1A/5 FillHandleProfile.di.profile.uml#_t8whEcT4EeWRgPxoFzdn1A">
+ <uml:Model xmi:id="_W0BLkGZzEeSDCaDFwPGYVw" name="model">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ANxf4GX6EeWnIND9h9eQPg" name="0Class">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN0jMGX6EeWnIND9h9eQPg" name="Property0_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN738GX6EeWnIND9h9eQPg" name="Property0_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN-7QGX6EeWnIND9h9eQPg" name="Property0_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOGQAGX6EeWnIND9h9eQPg" name="Operation0_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOG3EGX6EeWnIND9h9eQPg" name="Param0_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOHeIGX6EeWnIND9h9eQPg" name="Param0_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOIsQGX6EeWnIND9h9eQPg" name="Param0_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOJTUGX6EeWnIND9h9eQPg" name="Operation0_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOKhcGX6EeWnIND9h9eQPg" name="Param0_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOLvkGX6EeWnIND9h9eQPg" name="Param0_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOM9sGX6EeWnIND9h9eQPg" name="Param0_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AONkwGX6EeWnIND9h9eQPg" name="Operation0_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOOy4GX6EeWnIND9h9eQPg" name="Param0_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOPZ8GX6EeWnIND9h9eQPg" name="Param0_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOQBAGX6EeWnIND9h9eQPg" name="Param0_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOBXgGX6EeWnIND9h9eQPg" name="NestedClass0_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AODzwGX6EeWnIND9h9eQPg" name="NestedClass0_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOFB4GX6EeWnIND9h9eQPg" name="NestedClass0_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_AORPIGX6EeWnIND9h9eQPg" name="1Class">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOR2MGX6EeWnIND9h9eQPg" name="Property1_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOTEUGX6EeWnIND9h9eQPg" name="Property1_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOU5gGX6EeWnIND9h9eQPg" name="Property1_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOaZEGX6EeWnIND9h9eQPg" name="Operation1_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AObnMGX6EeWnIND9h9eQPg" name="Param1_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOc1UGX6EeWnIND9h9eQPg" name="Param1_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOdcYGX6EeWnIND9h9eQPg" name="Param1_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOeqgGX6EeWnIND9h9eQPg" name="Operation1_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOfRkGX6EeWnIND9h9eQPg" name="Param1_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOgfsGX6EeWnIND9h9eQPg" name="Param1_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOhGwGX6EeWnIND9h9eQPg" name="Param1_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOiU4GX6EeWnIND9h9eQPg" name="Operation1_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOjjAGX6EeWnIND9h9eQPg" name="Param1_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOkxIGX6EeWnIND9h9eQPg" name="Param1_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOlYMGX6EeWnIND9h9eQPg" name="Param1_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOWHoGX6EeWnIND9h9eQPg" name="NestedClass1_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOXVwGX6EeWnIND9h9eQPg" name="NestedClass1_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOZK8GX6EeWnIND9h9eQPg" name="NestedClass1_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_VhVUAMT4EeWRgPxoFzdn1A">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vI-ckMT4EeWRgPxoFzdn1A" source="PapyrusVersion">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vI-ckcT4EeWRgPxoFzdn1A" key="Version" value="0.0.1"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vI-cksT4EeWRgPxoFzdn1A" key="Comment" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vI-ck8T4EeWRgPxoFzdn1A" key="Copyright" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vI-clMT4EeWRgPxoFzdn1A" key="Date" value="2016-01-27"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vI-clcT4EeWRgPxoFzdn1A" key="Author" value=""/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_VhWiIMT4EeWRgPxoFzdn1A" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="FillHandleProfile.di.profile.uml#_t8whEcT4EeWRgPxoFzdn1A"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="FillHandleProfile.di.profile.uml#_o8C1sMT3EeWRgPxoFzdn1A"/>
+ </profileApplication>
+ </uml:Model>
+ <RootElement:Stereotype1 xmi:id="_br-RUMT4EeWRgPxoFzdn1A" base_Class="_ANxf4GX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_v7kXIMT4EeWRgPxoFzdn1A" Integer="2" base_Property="_AN0jMGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_wcTFoMT4EeWRgPxoFzdn1A" Integer="3" base_Property="_AN738GX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_xAmskMT4EeWRgPxoFzdn1A" Integer="4" base_Property="_AN-7QGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_xjqWUMT4EeWRgPxoFzdn1A" Integer="10" base_Operation="_AOGQAGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_yEiOwMT4EeWRgPxoFzdn1A" Integer="15" base_Operation="_AOJTUGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_ylveYMT4EeWRgPxoFzdn1A" Integer="20" base_Operation="_AONkwGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_zC-M8MT4EeWRgPxoFzdn1A" Integer="6" base_Class="_AOBXgGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_ziBgcMT4EeWRgPxoFzdn1A" Integer="7" base_Class="_AODzwGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_0BsfAMT4EeWRgPxoFzdn1A" Integer="8" base_Class="_AOFB4GX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_0xuNwMT4EeWRgPxoFzdn1A" Integer="12" base_Parameter="_AOG3EGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_1WfuwMT4EeWRgPxoFzdn1A" Integer="13" base_Parameter="_AOHeIGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_14g2sMT4EeWRgPxoFzdn1A" Integer="14" base_Parameter="_AOIsQGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_2urCoMT4EeWRgPxoFzdn1A" Integer="17" base_Parameter="_AOKhcGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_3G6jgMT4EeWRgPxoFzdn1A" Integer="18" base_Parameter="_AOLvkGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_3o7rcMT4EeWRgPxoFzdn1A" Integer="19" base_Parameter="_AOM9sGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_4TzNYMT4EeWRgPxoFzdn1A" Integer="22" base_Parameter="_AOOy4GX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_5KlEYMT4EeWRgPxoFzdn1A" Integer="23" base_Parameter="_AOPZ8GX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_5oNbkMT4EeWRgPxoFzdn1A" Integer="24" base_Parameter="_AOQBAGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_6vzVwMT4EeWRgPxoFzdn1A" Integer="25" base_Class="_AORPIGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_7b5mwMT4EeWRgPxoFzdn1A" Integer="27" base_Property="_AOR2MGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_75TUcMT4EeWRgPxoFzdn1A" Integer="28" base_Property="_AOTEUGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_8in-QMT4EeWRgPxoFzdn1A" Integer="29" base_Property="_AOU5gGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_9leiYMT4EeWRgPxoFzdn1A" Integer="35" base_Operation="_AOaZEGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_-bgygMT4EeWRgPxoFzdn1A" Integer="37" base_Parameter="_AObnMGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_-6GzAMT4EeWRgPxoFzdn1A" Integer="38" base_Parameter="_AOc1UGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="__bBuwMT4EeWRgPxoFzdn1A" Integer="39" base_Parameter="_AOdcYGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_AFN7QMT5EeWRgPxoFzdn1A" Integer="40" base_Operation="_AOeqgGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_AtnYAMT5EeWRgPxoFzdn1A" Integer="42" base_Parameter="_AOfRkGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_BPfWAMT5EeWRgPxoFzdn1A" Integer="43" base_Parameter="_AOgfsGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_B3fxMMT5EeWRgPxoFzdn1A" Integer="44" base_Parameter="_AOhGwGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_CcswAMT5EeWRgPxoFzdn1A" Integer="45" base_Operation="_AOiU4GX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_DUghwMT5EeWRgPxoFzdn1A" Integer="47" base_Parameter="_AOjjAGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_D7H10MT5EeWRgPxoFzdn1A" Integer="48" base_Parameter="_AOkxIGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_EXSNYMT5EeWRgPxoFzdn1A" Integer="49" base_Parameter="_AOlYMGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_E2cOkMT5EeWRgPxoFzdn1A" Integer="31" base_Class="_AOWHoGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_FSU5UMT5EeWRgPxoFzdn1A" Integer="32" base_Class="_AOXVwGX6EeWnIND9h9eQPg"/>
+ <RootElement:Stereotype1 xmi:id="_F3kUYMT5EeWRgPxoFzdn1A" Integer="33" base_Class="_AOZK8GX6EeWnIND9h9eQPg"/>
+</xmi:XMI>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_Initial.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_Initial.txt
new file mode 100644
index 00000000000..d729ad65c0d
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_Initial.txt
@@ -0,0 +1,51 @@
+
+0 0Class public false N/A
+
+2 Property0_0 protected true N/A
+3 Property0_1 protected true N/A
+4 Property0_2 protected true N/A
+
+6 NestedClass0_0 private true N/A
+7 NestedClass0_1 private true N/A
+8 NestedClass0_2 private true N/A
+
+10 Operation0_0 package false N/A
+
+12 Param0_0_0 public N/A in
+13 Param0_0_1 public N/A out
+14 Param0_0_2 public N/A return
+15 Operation0_1 package false N/A
+
+17 Param0_1_0 private N/A in
+18 Param0_1_1 private N/A out
+19 Param0_1_2 private N/A return
+20 Operation0_2 package false N/A
+
+22 Param0_2_0 package N/A in
+23 Param0_2_1 package N/A out
+24 Param0_2_2 package N/A return
+25 1Class public false N/A
+
+27 Property1_0 protected true N/A
+28 Property1_1 protected true N/A
+29 Property1_2 protected true N/A
+
+31 NestedClass1_0 private true N/A
+32 NestedClass1_1 private true N/A
+33 NestedClass1_2 private true N/A
+
+35 Operation1_0 package false N/A
+
+37 Param1_0_0 public N/A in
+38 Param1_0_1 public N/A out
+39 Param1_0_2 public N/A return
+40 Operation1_1 package false N/A
+
+42 Param1_1_0 private N/A in
+43 Param1_1_1 private N/A out
+44 Param1_1_2 private N/A return
+45 Operation1_2 package false N/A
+
+47 Param1_2_0 package N/A in
+48 Param1_2_1 package N/A out
+49 Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultCopy.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultCopy.txt
new file mode 100644
index 00000000000..990240e34dd
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultCopy.txt
@@ -0,0 +1,51 @@
+
+0 0Class public false N/A
+
+0 Property0_0 protected true N/A
+0 Property0_1 protected true N/A
+0 Property0_2 protected true N/A
+
+0 NestedClass0_0 private true N/A
+0 NestedClass0_1 private true N/A
+0 NestedClass0_2 private true N/A
+
+0 Operation0_0 package false N/A
+
+0 Param0_0_0 public N/A in
+0 Param0_0_1 public N/A out
+0 Param0_0_2 public N/A return
+0 Operation0_1 package false N/A
+
+0 Param0_1_0 private N/A in
+0 Param0_1_1 private N/A out
+0 Param0_1_2 private N/A return
+0 Operation0_2 package false N/A
+
+0 Param0_2_0 package N/A in
+0 Param0_2_1 package N/A out
+0 Param0_2_2 package N/A return
+0 1Class public false N/A
+
+0 Property1_0 protected true N/A
+0 Property1_1 protected true N/A
+0 Property1_2 protected true N/A
+
+0 NestedClass1_0 private true N/A
+0 NestedClass1_1 private true N/A
+0 NestedClass1_2 private true N/A
+
+0 Operation1_0 package false N/A
+
+0 Param1_0_0 public N/A in
+0 Param1_0_1 public N/A out
+0 Param1_0_2 public N/A return
+0 Operation1_1 package false N/A
+
+0 Param1_1_0 private N/A in
+0 Param1_1_1 private N/A out
+0 Param1_1_2 private N/A return
+0 Operation1_2 package false N/A
+
+0 Param1_2_0 package N/A in
+0 Param1_2_1 package N/A out
+0 Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementDown.txt
new file mode 100644
index 00000000000..96c44171b75
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementDown.txt
@@ -0,0 +1,51 @@
+
+0 0Class public false N/A
+
+-1 Property0_0 protected true N/A
+-2 Property0_1 protected true N/A
+-3 Property0_2 protected true N/A
+
+-4 NestedClass0_0 private true N/A
+-5 NestedClass0_1 private true N/A
+-6 NestedClass0_2 private true N/A
+
+-7 Operation0_0 package false N/A
+
+-8 Param0_0_0 public N/A in
+-9 Param0_0_1 public N/A out
+-10 Param0_0_2 public N/A return
+-11 Operation0_1 package false N/A
+
+-12 Param0_1_0 private N/A in
+-13 Param0_1_1 private N/A out
+-14 Param0_1_2 private N/A return
+-15 Operation0_2 package false N/A
+
+-16 Param0_2_0 package N/A in
+-17 Param0_2_1 package N/A out
+-18 Param0_2_2 package N/A return
+-19 1Class public false N/A
+
+-20 Property1_0 protected true N/A
+-21 Property1_1 protected true N/A
+-22 Property1_2 protected true N/A
+
+-23 NestedClass1_0 private true N/A
+-24 NestedClass1_1 private true N/A
+-25 NestedClass1_2 private true N/A
+
+-26 Operation1_0 package false N/A
+
+-27 Param1_0_0 public N/A in
+-28 Param1_0_1 public N/A out
+-29 Param1_0_2 public N/A return
+-30 Operation1_1 package false N/A
+
+-31 Param1_1_0 private N/A in
+-32 Param1_1_1 private N/A out
+-33 Param1_1_2 private N/A return
+-34 Operation1_2 package false N/A
+
+-35 Param1_2_0 package N/A in
+-36 Param1_2_1 package N/A out
+-37 Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementUp.txt
new file mode 100644
index 00000000000..3e2f4b90409
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultDecrementUp.txt
@@ -0,0 +1,51 @@
+
+12 0Class public false N/A
+
+13 Property0_0 protected true N/A
+14 Property0_1 protected true N/A
+15 Property0_2 protected true N/A
+
+16 NestedClass0_0 private true N/A
+17 NestedClass0_1 private true N/A
+18 NestedClass0_2 private true N/A
+
+19 Operation0_0 package false N/A
+
+20 Param0_0_0 public N/A in
+21 Param0_0_1 public N/A out
+22 Param0_0_2 public N/A return
+23 Operation0_1 package false N/A
+
+24 Param0_1_0 private N/A in
+25 Param0_1_1 private N/A out
+26 Param0_1_2 private N/A return
+27 Operation0_2 package false N/A
+
+28 Param0_2_0 package N/A in
+29 Param0_2_1 package N/A out
+30 Param0_2_2 package N/A return
+31 1Class public false N/A
+
+32 Property1_0 protected true N/A
+33 Property1_1 protected true N/A
+34 Property1_2 protected true N/A
+
+35 NestedClass1_0 private true N/A
+36 NestedClass1_1 private true N/A
+37 NestedClass1_2 private true N/A
+
+38 Operation1_0 package false N/A
+
+39 Param1_0_0 public N/A in
+40 Param1_0_1 public N/A out
+41 Param1_0_2 public N/A return
+42 Operation1_1 package false N/A
+
+43 Param1_1_0 private N/A in
+44 Param1_1_1 private N/A out
+45 Param1_1_2 private N/A return
+46 Operation1_2 package false N/A
+
+47 Param1_2_0 package N/A in
+48 Param1_2_1 package N/A out
+49 Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementDown.txt
new file mode 100644
index 00000000000..65696f8423e
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementDown.txt
@@ -0,0 +1,51 @@
+
+0 0Class public false N/A
+
+1 Property0_0 protected true N/A
+2 Property0_1 protected true N/A
+3 Property0_2 protected true N/A
+
+4 NestedClass0_0 private true N/A
+5 NestedClass0_1 private true N/A
+6 NestedClass0_2 private true N/A
+
+7 Operation0_0 package false N/A
+
+8 Param0_0_0 public N/A in
+9 Param0_0_1 public N/A out
+10 Param0_0_2 public N/A return
+11 Operation0_1 package false N/A
+
+12 Param0_1_0 private N/A in
+13 Param0_1_1 private N/A out
+14 Param0_1_2 private N/A return
+15 Operation0_2 package false N/A
+
+16 Param0_2_0 package N/A in
+17 Param0_2_1 package N/A out
+18 Param0_2_2 package N/A return
+19 1Class public false N/A
+
+20 Property1_0 protected true N/A
+21 Property1_1 protected true N/A
+22 Property1_2 protected true N/A
+
+23 NestedClass1_0 private true N/A
+24 NestedClass1_1 private true N/A
+25 NestedClass1_2 private true N/A
+
+26 Operation1_0 package false N/A
+
+27 Param1_0_0 public N/A in
+28 Param1_0_1 public N/A out
+29 Param1_0_2 public N/A return
+30 Operation1_1 package false N/A
+
+31 Param1_1_0 private N/A in
+32 Param1_1_1 private N/A out
+33 Param1_1_2 private N/A return
+34 Operation1_2 package false N/A
+
+35 Param1_2_0 package N/A in
+36 Param1_2_1 package N/A out
+37 Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementUp.txt
new file mode 100644
index 00000000000..d250fe67f41
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleInteger_V1_V3_V1_Test_ResultIncrementUp.txt
@@ -0,0 +1,51 @@
+
+86 0Class public false N/A
+
+85 Property0_0 protected true N/A
+84 Property0_1 protected true N/A
+83 Property0_2 protected true N/A
+
+82 NestedClass0_0 private true N/A
+81 NestedClass0_1 private true N/A
+80 NestedClass0_2 private true N/A
+
+79 Operation0_0 package false N/A
+
+78 Param0_0_0 public N/A in
+77 Param0_0_1 public N/A out
+76 Param0_0_2 public N/A return
+75 Operation0_1 package false N/A
+
+74 Param0_1_0 private N/A in
+73 Param0_1_1 private N/A out
+72 Param0_1_2 private N/A return
+71 Operation0_2 package false N/A
+
+70 Param0_2_0 package N/A in
+69 Param0_2_1 package N/A out
+68 Param0_2_2 package N/A return
+67 1Class public false N/A
+
+66 Property1_0 protected true N/A
+65 Property1_1 protected true N/A
+64 Property1_2 protected true N/A
+
+63 NestedClass1_0 private true N/A
+62 NestedClass1_1 private true N/A
+61 NestedClass1_2 private true N/A
+
+60 Operation1_0 package false N/A
+
+59 Param1_0_0 public N/A in
+58 Param1_0_1 public N/A out
+57 Param1_0_2 public N/A return
+56 Operation1_1 package false N/A
+
+55 Param1_1_0 private N/A in
+54 Param1_1_1 private N/A out
+53 Param1_1_2 private N/A return
+52 Operation1_2 package false N/A
+
+51 Param1_2_0 package N/A in
+50 Param1_2_1 package N/A out
+49 Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.di b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.di
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.notation b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.notation
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.notation
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.uml b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.uml
new file mode 100644
index 00000000000..edcc236f49a
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleProfile.di.profile.uml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_o8C1sMT3EeWRgPxoFzdn1A" name="RootElement" metaclassReference="_AHOi4MT4EeWRgPxoFzdn1A _AHPJ8MT4EeWRgPxoFzdn1A _AHPJ8cT4EeWRgPxoFzdn1A _rR9HsMT4EeWRgPxoFzdn1A">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_DKLWgMT4EeWRgPxoFzdn1A" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_t8whEcT4EeWRgPxoFzdn1A" name="RootElement" nsURI="http:///schemas/RootElement/_t8whEMT4EeWRgPxoFzdn1A/5" nsPrefix="RootElement">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_t8xIJMT4EeWRgPxoFzdn1A" source="PapyrusVersion">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_t8xIJcT4EeWRgPxoFzdn1A" key="Version" value="0.0.1"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_t8xIJsT4EeWRgPxoFzdn1A" key="Comment" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_t8xIJ8T4EeWRgPxoFzdn1A" key="Copyright" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_t8xIKMT4EeWRgPxoFzdn1A" key="Date" value="2016-01-27"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_t8xIKcT4EeWRgPxoFzdn1A" key="Author" value=""/>
+ </eAnnotations>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_t8whEsT4EeWRgPxoFzdn1A" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_t8whE8T4EeWRgPxoFzdn1A" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_uNpSMMT3EeWRgPxoFzdn1A"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_t8whFMT4EeWRgPxoFzdn1A" name="Integer" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//Integer"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_t8whFsT4EeWRgPxoFzdn1A" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_t8whGMT4EeWRgPxoFzdn1A" name="base_Operation" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Operation"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_t8whGsT4EeWRgPxoFzdn1A" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_t8whHMT4EeWRgPxoFzdn1A" name="base_Parameter" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Parameter"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ </eAnnotations>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_AHOi4MT4EeWRgPxoFzdn1A" alias="Class">
+ <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </elementImport>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_AHPJ8MT4EeWRgPxoFzdn1A" alias="Operation">
+ <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </elementImport>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_AHPJ8cT4EeWRgPxoFzdn1A" alias="Property">
+ <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </elementImport>
+ <elementImport xmi:type="uml:ElementImport" xmi:id="_rR9HsMT4EeWRgPxoFzdn1A" alias="Parameter">
+ <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ </elementImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_uNpSMMT3EeWRgPxoFzdn1A" name="Stereotype1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_vFbOwMT3EeWRgPxoFzdn1A" name="Integer">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_W6A-McT4EeWRgPxoFzdn1A" name="base_Class" association="_W5-h8MT4EeWRgPxoFzdn1A">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_XOGX0MT4EeWRgPxoFzdn1A" name="base_Operation" association="_XOFwwMT4EeWRgPxoFzdn1A">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_XnDqYMT4EeWRgPxoFzdn1A" name="base_Property" association="_XnDDUMT4EeWRgPxoFzdn1A">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_romtIcT4EeWRgPxoFzdn1A" name="base_Parameter" association="_romGEMT4EeWRgPxoFzdn1A">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_W5-h8MT4EeWRgPxoFzdn1A" name="E_Stereotype1_Class1" memberEnd="_W6A-MMT4EeWRgPxoFzdn1A _W6A-McT4EeWRgPxoFzdn1A">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_W6A-MMT4EeWRgPxoFzdn1A" name="extension_Stereotype1" type="_uNpSMMT3EeWRgPxoFzdn1A" aggregation="composite" association="_W5-h8MT4EeWRgPxoFzdn1A"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_XOFwwMT4EeWRgPxoFzdn1A" name="E_Stereotype1_Operation1" memberEnd="_XOFwwcT4EeWRgPxoFzdn1A _XOGX0MT4EeWRgPxoFzdn1A">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_XOFwwcT4EeWRgPxoFzdn1A" name="extension_Stereotype1" type="_uNpSMMT3EeWRgPxoFzdn1A" aggregation="composite" association="_XOFwwMT4EeWRgPxoFzdn1A"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_XnDDUMT4EeWRgPxoFzdn1A" name="E_Stereotype1_Property1" memberEnd="_XnDDUcT4EeWRgPxoFzdn1A _XnDqYMT4EeWRgPxoFzdn1A">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_XnDDUcT4EeWRgPxoFzdn1A" name="extension_Stereotype1" type="_uNpSMMT3EeWRgPxoFzdn1A" aggregation="composite" association="_XnDDUMT4EeWRgPxoFzdn1A"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_romGEMT4EeWRgPxoFzdn1A" name="E_Stereotype1_Parameter1" memberEnd="_romtIMT4EeWRgPxoFzdn1A _romtIcT4EeWRgPxoFzdn1A">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_romtIMT4EeWRgPxoFzdn1A" name="extension_Stereotype1" type="_uNpSMMT3EeWRgPxoFzdn1A" aggregation="composite" association="_romGEMT4EeWRgPxoFzdn1A"/>
+ </packagedElement>
+</uml:Profile>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.di b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.di
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.notation b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.notation
new file mode 100644
index 00000000000..fb37539570f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.notation
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nattable:Table xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:nattablelabelprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider http://www.eclipse.org/papyrus/nattable/model#//nattablelabelprovider" xmi:id="_0tdPAHcSEeSOKsM2DkqZ0A" name="ClassTreeTable" currentRowAxisProvider="_0tdPA3cSEeSOKsM2DkqZ0A" currentColumnAxisProvider="_0tdPAXcSEeSOKsM2DkqZ0A">
+ <context xmi:type="uml:Model" href="FillHandleStringOnlyPrefix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <owner xmi:type="uml:Model" href="FillHandleStringOnlyPrefix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <prototype xmi:type="configuration:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/classTreeTable.configuration#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_0tdPAXcSEeSOKsM2DkqZ0A" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Yk1o8mZzEeSDCaDFwPGYVw">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9OSsHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/visibility"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/isLeaf"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wXrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Parameter/direction"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_0tdPA3cSEeSOKsM2DkqZ0A" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowaAxisManager" disconnectSlave="true"/>
+ <localRowHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_yZauQHl4EeWqi9yWvPfrQQ" indexStyle="NUMERIC">
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNWnmiEeWJ7-W-e5W1og" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNUXmiEeWJ7-W-e5W1og" alias="Class">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNW3miEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNU3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXHmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNVXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXXmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNV3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNWHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXnmiEeWJ7-W-e5W1og" depth="2" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNWXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNWnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ <axisIdentifier xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_H1ZVkHmjEeWJ7-W-e5W1og">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axisIdentifier>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNW3miEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Property">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXHmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXXmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Operation">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Parameter">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </ownedAxisConfigurations>
+ <axisManagerConfigurations xmi:type="nattableaxisconfiguration:AxisManagerConfiguration" xmi:id="_SBHYIHmiEeWJ7-W-e5W1og" localSpecificConfigurations="_SBJNUHmiEeWJ7-W-e5W1og _SBJNUnmiEeWJ7-W-e5W1og _SBJNVHmiEeWJ7-W-e5W1og _SBJNVnmiEeWJ7-W-e5W1og _SBJNWHmiEeWJ7-W-e5W1og">
+ <axisManager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ </axisManagerConfigurations>
+ </localRowHeaderAxisConfiguration>
+</nattable:Table>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.uml b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.uml
new file mode 100644
index 00000000000..a6461e30b17
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.uml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_W0BLkGZzEeSDCaDFwPGYVw" name="model">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ANxf4GX6EeWnIND9h9eQPg" name="0Class">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN0jMGX6EeWnIND9h9eQPg" name="Property0_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN738GX6EeWnIND9h9eQPg" name="Property0_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN-7QGX6EeWnIND9h9eQPg" name="Property0_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOGQAGX6EeWnIND9h9eQPg" name="Operation0_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOG3EGX6EeWnIND9h9eQPg" name="Param0_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOHeIGX6EeWnIND9h9eQPg" name="Param0_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOIsQGX6EeWnIND9h9eQPg" name="Param0_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOJTUGX6EeWnIND9h9eQPg" name="Operation0_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOKhcGX6EeWnIND9h9eQPg" name="Param0_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOLvkGX6EeWnIND9h9eQPg" name="Param0_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOM9sGX6EeWnIND9h9eQPg" name="Param0_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AONkwGX6EeWnIND9h9eQPg" name="Operation0_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOOy4GX6EeWnIND9h9eQPg" name="Param0_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOPZ8GX6EeWnIND9h9eQPg" name="Param0_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOQBAGX6EeWnIND9h9eQPg" name="Param0_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOBXgGX6EeWnIND9h9eQPg" name="NestedClass0_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AODzwGX6EeWnIND9h9eQPg" name="NestedClass0_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOFB4GX6EeWnIND9h9eQPg" name="NestedClass0_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_AORPIGX6EeWnIND9h9eQPg" name="1Class">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOR2MGX6EeWnIND9h9eQPg" name="Property1_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOTEUGX6EeWnIND9h9eQPg" name="Property1_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOU5gGX6EeWnIND9h9eQPg" name="Property1_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOaZEGX6EeWnIND9h9eQPg" name="Operation1_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AObnMGX6EeWnIND9h9eQPg" name="Param1_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOc1UGX6EeWnIND9h9eQPg" name="Param1_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOdcYGX6EeWnIND9h9eQPg" name="Param1_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOeqgGX6EeWnIND9h9eQPg" name="Operation1_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOfRkGX6EeWnIND9h9eQPg" name="Param1_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOgfsGX6EeWnIND9h9eQPg" name="Param1_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOhGwGX6EeWnIND9h9eQPg" name="Param1_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOiU4GX6EeWnIND9h9eQPg" name="Operation1_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOjjAGX6EeWnIND9h9eQPg" name="Param1_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOkxIGX6EeWnIND9h9eQPg" name="Param1_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOlYMGX6EeWnIND9h9eQPg" name="1_2_2Param" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOWHoGX6EeWnIND9h9eQPg" name="NestedClass1_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOXVwGX6EeWnIND9h9eQPg" name="NestedClass1_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOZK8GX6EeWnIND9h9eQPg" name="NestedClass1_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+</uml:Model>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_Initial.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_Initial.txt
new file mode 100644
index 00000000000..f68bb7fcc09
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_Initial.txt
@@ -0,0 +1,51 @@
+
+0Class public false N/A
+
+Property0_0 protected true N/A
+Property0_1 protected true N/A
+Property0_2 protected true N/A
+
+NestedClass0_0 private true N/A
+NestedClass0_1 private true N/A
+NestedClass0_2 private true N/A
+
+Operation0_0 package false N/A
+
+Param0_0_0 public N/A in
+Param0_0_1 public N/A out
+Param0_0_2 public N/A return
+Operation0_1 package false N/A
+
+Param0_1_0 private N/A in
+Param0_1_1 private N/A out
+Param0_1_2 private N/A return
+Operation0_2 package false N/A
+
+Param0_2_0 package N/A in
+Param0_2_1 package N/A out
+Param0_2_2 package N/A return
+1Class public false N/A
+
+Property1_0 protected true N/A
+Property1_1 protected true N/A
+Property1_2 protected true N/A
+
+NestedClass1_0 private true N/A
+NestedClass1_1 private true N/A
+NestedClass1_2 private true N/A
+
+Operation1_0 package false N/A
+
+Param1_0_0 public N/A in
+Param1_0_1 public N/A out
+Param1_0_2 public N/A return
+Operation1_1 package false N/A
+
+Param1_1_0 private N/A in
+Param1_1_1 private N/A out
+Param1_1_2 private N/A return
+Operation1_2 package false N/A
+
+Param1_2_0 package N/A in
+Param1_2_1 package N/A out
+1_2_2Param package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultCopy.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultCopy.txt
new file mode 100644
index 00000000000..cc1c1c2a137
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultCopy.txt
@@ -0,0 +1,51 @@
+
+0Class public false N/A
+
+0Class protected true N/A
+0Class protected true N/A
+0Class protected true N/A
+
+0Class private true N/A
+0Class private true N/A
+0Class private true N/A
+
+0Class package false N/A
+
+0Class public N/A in
+0Class public N/A out
+0Class public N/A return
+0Class package false N/A
+
+0Class private N/A in
+0Class private N/A out
+0Class private N/A return
+0Class package false N/A
+
+0Class package N/A in
+0Class package N/A out
+0Class package N/A return
+0Class public false N/A
+
+0Class protected true N/A
+0Class protected true N/A
+0Class protected true N/A
+
+0Class private true N/A
+0Class private true N/A
+0Class private true N/A
+
+0Class package false N/A
+
+0Class public N/A in
+0Class public N/A out
+0Class public N/A return
+0Class package false N/A
+
+0Class private N/A in
+0Class private N/A out
+0Class private N/A return
+0Class package false N/A
+
+0Class package N/A in
+0Class package N/A out
+0Class package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementDown.txt
new file mode 100644
index 00000000000..9ac9c56022f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementDown.txt
@@ -0,0 +1,51 @@
+
+0Class public false N/A
+
+-1Class protected true N/A
+-2Class protected true N/A
+-3Class protected true N/A
+
+-4Class private true N/A
+-5Class private true N/A
+-6Class private true N/A
+
+-7Class package false N/A
+
+-8Class public N/A in
+-9Class public N/A out
+-10Class public N/A return
+-11Class package false N/A
+
+-12Class private N/A in
+-13Class private N/A out
+-14Class private N/A return
+-15Class package false N/A
+
+-16Class package N/A in
+-17Class package N/A out
+-18Class package N/A return
+-19Class public false N/A
+
+-20Class protected true N/A
+-21Class protected true N/A
+-22Class protected true N/A
+
+-23Class private true N/A
+-24Class private true N/A
+-25Class private true N/A
+
+-26Class package false N/A
+
+-27Class public N/A in
+-28Class public N/A out
+-29Class public N/A return
+-30Class package false N/A
+
+-31Class private N/A in
+-32Class private N/A out
+-33Class private N/A return
+-34Class package false N/A
+
+-35Class package N/A in
+-36Class package N/A out
+-37Class package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementUp.txt
new file mode 100644
index 00000000000..5df4123bd0e
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultDecrementUp.txt
@@ -0,0 +1,51 @@
+
+-36_2_2Param public false N/A
+
+-35_2_2Param protected true N/A
+-34_2_2Param protected true N/A
+-33_2_2Param protected true N/A
+
+-32_2_2Param private true N/A
+-31_2_2Param private true N/A
+-30_2_2Param private true N/A
+
+-29_2_2Param package false N/A
+
+-28_2_2Param public N/A in
+-27_2_2Param public N/A out
+-26_2_2Param public N/A return
+-25_2_2Param package false N/A
+
+-24_2_2Param private N/A in
+-23_2_2Param private N/A out
+-22_2_2Param private N/A return
+-21_2_2Param package false N/A
+
+-20_2_2Param package N/A in
+-19_2_2Param package N/A out
+-18_2_2Param package N/A return
+-17_2_2Param public false N/A
+
+-16_2_2Param protected true N/A
+-15_2_2Param protected true N/A
+-14_2_2Param protected true N/A
+
+-13_2_2Param private true N/A
+-12_2_2Param private true N/A
+-11_2_2Param private true N/A
+
+-10_2_2Param package false N/A
+
+-9_2_2Param public N/A in
+-8_2_2Param public N/A out
+-7_2_2Param public N/A return
+-6_2_2Param package false N/A
+
+-5_2_2Param private N/A in
+-4_2_2Param private N/A out
+-3_2_2Param private N/A return
+-2_2_2Param package false N/A
+
+-1_2_2Param package N/A in
+0_2_2Param package N/A out
+1_2_2Param package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementDown.txt
new file mode 100644
index 00000000000..19537ebcbf5
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementDown.txt
@@ -0,0 +1,51 @@
+
+0Class public false N/A
+
+1Class protected true N/A
+2Class protected true N/A
+3Class protected true N/A
+
+4Class private true N/A
+5Class private true N/A
+6Class private true N/A
+
+7Class package false N/A
+
+8Class public N/A in
+9Class public N/A out
+10Class public N/A return
+11Class package false N/A
+
+12Class private N/A in
+13Class private N/A out
+14Class private N/A return
+15Class package false N/A
+
+16Class package N/A in
+17Class package N/A out
+18Class package N/A return
+19Class public false N/A
+
+20Class protected true N/A
+21Class protected true N/A
+22Class protected true N/A
+
+23Class private true N/A
+24Class private true N/A
+25Class private true N/A
+
+26Class package false N/A
+
+27Class public N/A in
+28Class public N/A out
+29Class public N/A return
+30Class package false N/A
+
+31Class private N/A in
+32Class private N/A out
+33Class private N/A return
+34Class package false N/A
+
+35Class package N/A in
+36Class package N/A out
+37Class package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementUp.txt
new file mode 100644
index 00000000000..dbec39d0d3f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test_ResultIncrementUp.txt
@@ -0,0 +1,51 @@
+
+38_2_2Param public false N/A
+
+37_2_2Param protected true N/A
+36_2_2Param protected true N/A
+35_2_2Param protected true N/A
+
+34_2_2Param private true N/A
+33_2_2Param private true N/A
+32_2_2Param private true N/A
+
+31_2_2Param package false N/A
+
+30_2_2Param public N/A in
+29_2_2Param public N/A out
+28_2_2Param public N/A return
+27_2_2Param package false N/A
+
+26_2_2Param private N/A in
+25_2_2Param private N/A out
+24_2_2Param private N/A return
+23_2_2Param package false N/A
+
+22_2_2Param package N/A in
+21_2_2Param package N/A out
+20_2_2Param package N/A return
+19_2_2Param public false N/A
+
+18_2_2Param protected true N/A
+17_2_2Param protected true N/A
+16_2_2Param protected true N/A
+
+15_2_2Param private true N/A
+14_2_2Param private true N/A
+13_2_2Param private true N/A
+
+12_2_2Param package false N/A
+
+11_2_2Param public N/A in
+10_2_2Param public N/A out
+9_2_2Param public N/A return
+8_2_2Param package false N/A
+
+7_2_2Param private N/A in
+6_2_2Param private N/A out
+5_2_2Param private N/A return
+4_2_2Param package false N/A
+
+3_2_2Param package N/A in
+2_2_2Param package N/A out
+1_2_2Param package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.di b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.di
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.notation b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.notation
new file mode 100644
index 00000000000..503982457cb
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.notation
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nattable:Table xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:nattablelabelprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider http://www.eclipse.org/papyrus/nattable/model#//nattablelabelprovider" xmi:id="_0tdPAHcSEeSOKsM2DkqZ0A" name="ClassTreeTable" currentRowAxisProvider="_0tdPA3cSEeSOKsM2DkqZ0A" currentColumnAxisProvider="_0tdPAXcSEeSOKsM2DkqZ0A">
+ <context xmi:type="uml:Model" href="FillHandleStringOnlySuffix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <owner xmi:type="uml:Model" href="FillHandleStringOnlySuffix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <prototype xmi:type="configuration:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/classTreeTable.configuration#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_0tdPAXcSEeSOKsM2DkqZ0A" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Yk1o8mZzEeSDCaDFwPGYVw">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9OSsHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/visibility"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/isLeaf"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wXrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Parameter/direction"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_0tdPA3cSEeSOKsM2DkqZ0A" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowaAxisManager" disconnectSlave="true"/>
+ <localRowHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_yZauQHl4EeWqi9yWvPfrQQ" indexStyle="NUMERIC">
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNWnmiEeWJ7-W-e5W1og" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNUXmiEeWJ7-W-e5W1og" alias="Class">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNW3miEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNU3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXHmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNVXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXXmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNV3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNWHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXnmiEeWJ7-W-e5W1og" depth="2" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNWXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNWnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ <axisIdentifier xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_H1ZVkHmjEeWJ7-W-e5W1og">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axisIdentifier>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNW3miEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Property">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXHmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXXmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Operation">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Parameter">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </ownedAxisConfigurations>
+ <axisManagerConfigurations xmi:type="nattableaxisconfiguration:AxisManagerConfiguration" xmi:id="_SBHYIHmiEeWJ7-W-e5W1og" localSpecificConfigurations="_SBJNUHmiEeWJ7-W-e5W1og _SBJNUnmiEeWJ7-W-e5W1og _SBJNVHmiEeWJ7-W-e5W1og _SBJNVnmiEeWJ7-W-e5W1og _SBJNWHmiEeWJ7-W-e5W1og">
+ <axisManager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ </axisManagerConfigurations>
+ </localRowHeaderAxisConfiguration>
+</nattable:Table>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.uml b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.uml
new file mode 100644
index 00000000000..78a39ffa2bb
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.uml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_W0BLkGZzEeSDCaDFwPGYVw" name="model">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ANxf4GX6EeWnIND9h9eQPg" name="Class0">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN0jMGX6EeWnIND9h9eQPg" name="Property0_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN738GX6EeWnIND9h9eQPg" name="Property0_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN-7QGX6EeWnIND9h9eQPg" name="Property0_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOGQAGX6EeWnIND9h9eQPg" name="Operation0_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOG3EGX6EeWnIND9h9eQPg" name="Param0_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOHeIGX6EeWnIND9h9eQPg" name="Param0_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOIsQGX6EeWnIND9h9eQPg" name="Param0_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOJTUGX6EeWnIND9h9eQPg" name="Operation0_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOKhcGX6EeWnIND9h9eQPg" name="Param0_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOLvkGX6EeWnIND9h9eQPg" name="Param0_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOM9sGX6EeWnIND9h9eQPg" name="Param0_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AONkwGX6EeWnIND9h9eQPg" name="Operation0_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOOy4GX6EeWnIND9h9eQPg" name="Param0_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOPZ8GX6EeWnIND9h9eQPg" name="Param0_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOQBAGX6EeWnIND9h9eQPg" name="Param0_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOBXgGX6EeWnIND9h9eQPg" name="NestedClass0_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AODzwGX6EeWnIND9h9eQPg" name="NestedClass0_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOFB4GX6EeWnIND9h9eQPg" name="NestedClass0_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_AORPIGX6EeWnIND9h9eQPg" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOR2MGX6EeWnIND9h9eQPg" name="Property1_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOTEUGX6EeWnIND9h9eQPg" name="Property1_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOU5gGX6EeWnIND9h9eQPg" name="Property1_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOaZEGX6EeWnIND9h9eQPg" name="Operation1_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AObnMGX6EeWnIND9h9eQPg" name="Param1_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOc1UGX6EeWnIND9h9eQPg" name="Param1_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOdcYGX6EeWnIND9h9eQPg" name="Param1_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOeqgGX6EeWnIND9h9eQPg" name="Operation1_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOfRkGX6EeWnIND9h9eQPg" name="Param1_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOgfsGX6EeWnIND9h9eQPg" name="Param1_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOhGwGX6EeWnIND9h9eQPg" name="Param1_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOiU4GX6EeWnIND9h9eQPg" name="Operation1_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOjjAGX6EeWnIND9h9eQPg" name="Param1_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOkxIGX6EeWnIND9h9eQPg" name="Param1_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOlYMGX6EeWnIND9h9eQPg" name="Param1_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOWHoGX6EeWnIND9h9eQPg" name="NestedClass1_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOXVwGX6EeWnIND9h9eQPg" name="NestedClass1_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOZK8GX6EeWnIND9h9eQPg" name="NestedClass1_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+</uml:Model>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_Initial.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_Initial.txt
new file mode 100644
index 00000000000..e39b39deed5
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_Initial.txt
@@ -0,0 +1,51 @@
+
+Class0 public false N/A
+
+Property0_0 protected true N/A
+Property0_1 protected true N/A
+Property0_2 protected true N/A
+
+NestedClass0_0 private true N/A
+NestedClass0_1 private true N/A
+NestedClass0_2 private true N/A
+
+Operation0_0 package false N/A
+
+Param0_0_0 public N/A in
+Param0_0_1 public N/A out
+Param0_0_2 public N/A return
+Operation0_1 package false N/A
+
+Param0_1_0 private N/A in
+Param0_1_1 private N/A out
+Param0_1_2 private N/A return
+Operation0_2 package false N/A
+
+Param0_2_0 package N/A in
+Param0_2_1 package N/A out
+Param0_2_2 package N/A return
+Class1 public false N/A
+
+Property1_0 protected true N/A
+Property1_1 protected true N/A
+Property1_2 protected true N/A
+
+NestedClass1_0 private true N/A
+NestedClass1_1 private true N/A
+NestedClass1_2 private true N/A
+
+Operation1_0 package false N/A
+
+Param1_0_0 public N/A in
+Param1_0_1 public N/A out
+Param1_0_2 public N/A return
+Operation1_1 package false N/A
+
+Param1_1_0 private N/A in
+Param1_1_1 private N/A out
+Param1_1_2 private N/A return
+Operation1_2 package false N/A
+
+Param1_2_0 package N/A in
+Param1_2_1 package N/A out
+Param1_2_2 package N/A return
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultCopy.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultCopy.txt
new file mode 100644
index 00000000000..2482195acb5
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultCopy.txt
@@ -0,0 +1,51 @@
+
+Class0 public false N/A
+
+Class0 protected true N/A
+Class0 protected true N/A
+Class0 protected true N/A
+
+Class0 private true N/A
+Class0 private true N/A
+Class0 private true N/A
+
+Class0 package false N/A
+
+Class0 public N/A in
+Class0 public N/A out
+Class0 public N/A return
+Class0 package false N/A
+
+Class0 private N/A in
+Class0 private N/A out
+Class0 private N/A return
+Class0 package false N/A
+
+Class0 package N/A in
+Class0 package N/A out
+Class0 package N/A return
+Class0 public false N/A
+
+Class0 protected true N/A
+Class0 protected true N/A
+Class0 protected true N/A
+
+Class0 private true N/A
+Class0 private true N/A
+Class0 private true N/A
+
+Class0 package false N/A
+
+Class0 public N/A in
+Class0 public N/A out
+Class0 public N/A return
+Class0 package false N/A
+
+Class0 private N/A in
+Class0 private N/A out
+Class0 private N/A return
+Class0 package false N/A
+
+Class0 package N/A in
+Class0 package N/A out
+Class0 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementDown.txt
new file mode 100644
index 00000000000..2f09287ceeb
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementDown.txt
@@ -0,0 +1,51 @@
+
+Class0 public false N/A
+
+Class-1 protected true N/A
+Class-2 protected true N/A
+Class-3 protected true N/A
+
+Class-4 private true N/A
+Class-5 private true N/A
+Class-6 private true N/A
+
+Class-7 package false N/A
+
+Class-8 public N/A in
+Class-9 public N/A out
+Class-10 public N/A return
+Class-11 package false N/A
+
+Class-12 private N/A in
+Class-13 private N/A out
+Class-14 private N/A return
+Class-15 package false N/A
+
+Class-16 package N/A in
+Class-17 package N/A out
+Class-18 package N/A return
+Class-19 public false N/A
+
+Class-20 protected true N/A
+Class-21 protected true N/A
+Class-22 protected true N/A
+
+Class-23 private true N/A
+Class-24 private true N/A
+Class-25 private true N/A
+
+Class-26 package false N/A
+
+Class-27 public N/A in
+Class-28 public N/A out
+Class-29 public N/A return
+Class-30 package false N/A
+
+Class-31 private N/A in
+Class-32 private N/A out
+Class-33 private N/A return
+Class-34 package false N/A
+
+Class-35 package N/A in
+Class-36 package N/A out
+Class-37 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementUp.txt
new file mode 100644
index 00000000000..c06fe11e050
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultDecrementUp.txt
@@ -0,0 +1,51 @@
+
+Param1_2_-35 public false N/A
+
+Param1_2_-34 protected true N/A
+Param1_2_-33 protected true N/A
+Param1_2_-32 protected true N/A
+
+Param1_2_-31 private true N/A
+Param1_2_-30 private true N/A
+Param1_2_-29 private true N/A
+
+Param1_2_-28 package false N/A
+
+Param1_2_-27 public N/A in
+Param1_2_-26 public N/A out
+Param1_2_-25 public N/A return
+Param1_2_-24 package false N/A
+
+Param1_2_-23 private N/A in
+Param1_2_-22 private N/A out
+Param1_2_-21 private N/A return
+Param1_2_-20 package false N/A
+
+Param1_2_-19 package N/A in
+Param1_2_-18 package N/A out
+Param1_2_-17 package N/A return
+Param1_2_-16 public false N/A
+
+Param1_2_-15 protected true N/A
+Param1_2_-14 protected true N/A
+Param1_2_-13 protected true N/A
+
+Param1_2_-12 private true N/A
+Param1_2_-11 private true N/A
+Param1_2_-10 private true N/A
+
+Param1_2_-9 package false N/A
+
+Param1_2_-8 public N/A in
+Param1_2_-7 public N/A out
+Param1_2_-6 public N/A return
+Param1_2_-5 package false N/A
+
+Param1_2_-4 private N/A in
+Param1_2_-3 private N/A out
+Param1_2_-2 private N/A return
+Param1_2_-1 package false N/A
+
+Param1_2_0 package N/A in
+Param1_2_1 package N/A out
+Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementDown.txt
new file mode 100644
index 00000000000..70ca155123f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementDown.txt
@@ -0,0 +1,51 @@
+
+Class0 public false N/A
+
+Class1 protected true N/A
+Class2 protected true N/A
+Class3 protected true N/A
+
+Class4 private true N/A
+Class5 private true N/A
+Class6 private true N/A
+
+Class7 package false N/A
+
+Class8 public N/A in
+Class9 public N/A out
+Class10 public N/A return
+Class11 package false N/A
+
+Class12 private N/A in
+Class13 private N/A out
+Class14 private N/A return
+Class15 package false N/A
+
+Class16 package N/A in
+Class17 package N/A out
+Class18 package N/A return
+Class19 public false N/A
+
+Class20 protected true N/A
+Class21 protected true N/A
+Class22 protected true N/A
+
+Class23 private true N/A
+Class24 private true N/A
+Class25 private true N/A
+
+Class26 package false N/A
+
+Class27 public N/A in
+Class28 public N/A out
+Class29 public N/A return
+Class30 package false N/A
+
+Class31 private N/A in
+Class32 private N/A out
+Class33 private N/A return
+Class34 package false N/A
+
+Class35 package N/A in
+Class36 package N/A out
+Class37 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementUp.txt
new file mode 100644
index 00000000000..6f603441954
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test_ResultIncrementUp.txt
@@ -0,0 +1,51 @@
+
+Param1_2_39 public false N/A
+
+Param1_2_38 protected true N/A
+Param1_2_37 protected true N/A
+Param1_2_36 protected true N/A
+
+Param1_2_35 private true N/A
+Param1_2_34 private true N/A
+Param1_2_33 private true N/A
+
+Param1_2_32 package false N/A
+
+Param1_2_31 public N/A in
+Param1_2_30 public N/A out
+Param1_2_29 public N/A return
+Param1_2_28 package false N/A
+
+Param1_2_27 private N/A in
+Param1_2_26 private N/A out
+Param1_2_25 private N/A return
+Param1_2_24 package false N/A
+
+Param1_2_23 package N/A in
+Param1_2_22 package N/A out
+Param1_2_21 package N/A return
+Param1_2_20 public false N/A
+
+Param1_2_19 protected true N/A
+Param1_2_18 protected true N/A
+Param1_2_17 protected true N/A
+
+Param1_2_16 private true N/A
+Param1_2_15 private true N/A
+Param1_2_14 private true N/A
+
+Param1_2_13 package false N/A
+
+Param1_2_12 public N/A in
+Param1_2_11 public N/A out
+Param1_2_10 public N/A return
+Param1_2_9 package false N/A
+
+Param1_2_8 private N/A in
+Param1_2_7 private N/A out
+Param1_2_6 private N/A return
+Param1_2_5 package false N/A
+
+Param1_2_4 package N/A in
+Param1_2_3 package N/A out
+Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.di b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.di
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.notation b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.notation
new file mode 100644
index 00000000000..97e58a03ef0
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.notation
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nattable:Table xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:nattablelabelprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider http://www.eclipse.org/papyrus/nattable/model#//nattablelabelprovider" xmi:id="_0tdPAHcSEeSOKsM2DkqZ0A" name="ClassTreeTable" currentRowAxisProvider="_0tdPA3cSEeSOKsM2DkqZ0A" currentColumnAxisProvider="_0tdPAXcSEeSOKsM2DkqZ0A">
+ <context xmi:type="uml:Model" href="FillHandleStringPrefix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <owner xmi:type="uml:Model" href="FillHandleStringPrefix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <prototype xmi:type="configuration:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/classTreeTable.configuration#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_0tdPAXcSEeSOKsM2DkqZ0A" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Yk1o8mZzEeSDCaDFwPGYVw">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9OSsHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/visibility"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/isLeaf"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wXrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Parameter/direction"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_0tdPA3cSEeSOKsM2DkqZ0A" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowaAxisManager" disconnectSlave="true"/>
+ <localRowHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_yZauQHl4EeWqi9yWvPfrQQ" indexStyle="NUMERIC">
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNWnmiEeWJ7-W-e5W1og" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNUXmiEeWJ7-W-e5W1og" alias="Class">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNW3miEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNU3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXHmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNVXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXXmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNV3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNWHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXnmiEeWJ7-W-e5W1og" depth="2" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNWXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNWnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ <axisIdentifier xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_H1ZVkHmjEeWJ7-W-e5W1og">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axisIdentifier>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNW3miEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Property">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXHmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXXmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Operation">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Parameter">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </ownedAxisConfigurations>
+ <axisManagerConfigurations xmi:type="nattableaxisconfiguration:AxisManagerConfiguration" xmi:id="_SBHYIHmiEeWJ7-W-e5W1og" localSpecificConfigurations="_SBJNUHmiEeWJ7-W-e5W1og _SBJNUnmiEeWJ7-W-e5W1og _SBJNVHmiEeWJ7-W-e5W1og _SBJNVnmiEeWJ7-W-e5W1og _SBJNWHmiEeWJ7-W-e5W1og">
+ <axisManager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ </axisManagerConfigurations>
+ </localRowHeaderAxisConfiguration>
+</nattable:Table>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.uml b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.uml
new file mode 100644
index 00000000000..c13f23f6dfa
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.uml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_W0BLkGZzEeSDCaDFwPGYVw" name="model">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ANxf4GX6EeWnIND9h9eQPg" name="0Class0">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN0jMGX6EeWnIND9h9eQPg" name="Property0_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN738GX6EeWnIND9h9eQPg" name="Property0_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN-7QGX6EeWnIND9h9eQPg" name="Property0_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOGQAGX6EeWnIND9h9eQPg" name="Operation0_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOG3EGX6EeWnIND9h9eQPg" name="Param0_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOHeIGX6EeWnIND9h9eQPg" name="Param0_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOIsQGX6EeWnIND9h9eQPg" name="Param0_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOJTUGX6EeWnIND9h9eQPg" name="Operation0_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOKhcGX6EeWnIND9h9eQPg" name="Param0_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOLvkGX6EeWnIND9h9eQPg" name="Param0_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOM9sGX6EeWnIND9h9eQPg" name="Param0_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AONkwGX6EeWnIND9h9eQPg" name="Operation0_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOOy4GX6EeWnIND9h9eQPg" name="Param0_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOPZ8GX6EeWnIND9h9eQPg" name="Param0_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOQBAGX6EeWnIND9h9eQPg" name="Param0_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOBXgGX6EeWnIND9h9eQPg" name="NestedClass0_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AODzwGX6EeWnIND9h9eQPg" name="NestedClass0_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOFB4GX6EeWnIND9h9eQPg" name="NestedClass0_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_AORPIGX6EeWnIND9h9eQPg" name="1Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOR2MGX6EeWnIND9h9eQPg" name="Property1_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOTEUGX6EeWnIND9h9eQPg" name="Property1_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOU5gGX6EeWnIND9h9eQPg" name="Property1_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOaZEGX6EeWnIND9h9eQPg" name="Operation1_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AObnMGX6EeWnIND9h9eQPg" name="Param1_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOc1UGX6EeWnIND9h9eQPg" name="Param1_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOdcYGX6EeWnIND9h9eQPg" name="Param1_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOeqgGX6EeWnIND9h9eQPg" name="Operation1_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOfRkGX6EeWnIND9h9eQPg" name="Param1_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOgfsGX6EeWnIND9h9eQPg" name="Param1_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOhGwGX6EeWnIND9h9eQPg" name="Param1_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOiU4GX6EeWnIND9h9eQPg" name="Operation1_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOjjAGX6EeWnIND9h9eQPg" name="Param1_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOkxIGX6EeWnIND9h9eQPg" name="Param1_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOlYMGX6EeWnIND9h9eQPg" name="1_2_2Param1_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOWHoGX6EeWnIND9h9eQPg" name="NestedClass1_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOXVwGX6EeWnIND9h9eQPg" name="NestedClass1_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOZK8GX6EeWnIND9h9eQPg" name="NestedClass1_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+</uml:Model>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_Initial.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_Initial.txt
new file mode 100644
index 00000000000..6764243b7b7
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_Initial.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+Property0_0 protected true N/A
+Property0_1 protected true N/A
+Property0_2 protected true N/A
+
+NestedClass0_0 private true N/A
+NestedClass0_1 private true N/A
+NestedClass0_2 private true N/A
+
+Operation0_0 package false N/A
+
+Param0_0_0 public N/A in
+Param0_0_1 public N/A out
+Param0_0_2 public N/A return
+Operation0_1 package false N/A
+
+Param0_1_0 private N/A in
+Param0_1_1 private N/A out
+Param0_1_2 private N/A return
+Operation0_2 package false N/A
+
+Param0_2_0 package N/A in
+Param0_2_1 package N/A out
+Param0_2_2 package N/A return
+1Class1 public false N/A
+
+Property1_0 protected true N/A
+Property1_1 protected true N/A
+Property1_2 protected true N/A
+
+NestedClass1_0 private true N/A
+NestedClass1_1 private true N/A
+NestedClass1_2 private true N/A
+
+Operation1_0 package false N/A
+
+Param1_0_0 public N/A in
+Param1_0_1 public N/A out
+Param1_0_2 public N/A return
+Operation1_1 package false N/A
+
+Param1_1_0 private N/A in
+Param1_1_1 private N/A out
+Param1_1_2 private N/A return
+Operation1_2 package false N/A
+
+Param1_2_0 package N/A in
+Param1_2_1 package N/A out
+1_2_2Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultCopy.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultCopy.txt
new file mode 100644
index 00000000000..f60d9598515
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultCopy.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+0Class0 protected true N/A
+0Class0 protected true N/A
+0Class0 protected true N/A
+
+0Class0 private true N/A
+0Class0 private true N/A
+0Class0 private true N/A
+
+0Class0 package false N/A
+
+0Class0 public N/A in
+0Class0 public N/A out
+0Class0 public N/A return
+0Class0 package false N/A
+
+0Class0 private N/A in
+0Class0 private N/A out
+0Class0 private N/A return
+0Class0 package false N/A
+
+0Class0 package N/A in
+0Class0 package N/A out
+0Class0 package N/A return
+0Class0 public false N/A
+
+0Class0 protected true N/A
+0Class0 protected true N/A
+0Class0 protected true N/A
+
+0Class0 private true N/A
+0Class0 private true N/A
+0Class0 private true N/A
+
+0Class0 package false N/A
+
+0Class0 public N/A in
+0Class0 public N/A out
+0Class0 public N/A return
+0Class0 package false N/A
+
+0Class0 private N/A in
+0Class0 private N/A out
+0Class0 private N/A return
+0Class0 package false N/A
+
+0Class0 package N/A in
+0Class0 package N/A out
+0Class0 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementDown.txt
new file mode 100644
index 00000000000..944cbc56ff8
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementDown.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+-1Class0 protected true N/A
+-2Class0 protected true N/A
+-3Class0 protected true N/A
+
+-4Class0 private true N/A
+-5Class0 private true N/A
+-6Class0 private true N/A
+
+-7Class0 package false N/A
+
+-8Class0 public N/A in
+-9Class0 public N/A out
+-10Class0 public N/A return
+-11Class0 package false N/A
+
+-12Class0 private N/A in
+-13Class0 private N/A out
+-14Class0 private N/A return
+-15Class0 package false N/A
+
+-16Class0 package N/A in
+-17Class0 package N/A out
+-18Class0 package N/A return
+-19Class0 public false N/A
+
+-20Class0 protected true N/A
+-21Class0 protected true N/A
+-22Class0 protected true N/A
+
+-23Class0 private true N/A
+-24Class0 private true N/A
+-25Class0 private true N/A
+
+-26Class0 package false N/A
+
+-27Class0 public N/A in
+-28Class0 public N/A out
+-29Class0 public N/A return
+-30Class0 package false N/A
+
+-31Class0 private N/A in
+-32Class0 private N/A out
+-33Class0 private N/A return
+-34Class0 package false N/A
+
+-35Class0 package N/A in
+-36Class0 package N/A out
+-37Class0 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementUp.txt
new file mode 100644
index 00000000000..e0799617bef
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultDecrementUp.txt
@@ -0,0 +1,51 @@
+
+-36_2_2Param1_2_2 public false N/A
+
+-35_2_2Param1_2_2 protected true N/A
+-34_2_2Param1_2_2 protected true N/A
+-33_2_2Param1_2_2 protected true N/A
+
+-32_2_2Param1_2_2 private true N/A
+-31_2_2Param1_2_2 private true N/A
+-30_2_2Param1_2_2 private true N/A
+
+-29_2_2Param1_2_2 package false N/A
+
+-28_2_2Param1_2_2 public N/A in
+-27_2_2Param1_2_2 public N/A out
+-26_2_2Param1_2_2 public N/A return
+-25_2_2Param1_2_2 package false N/A
+
+-24_2_2Param1_2_2 private N/A in
+-23_2_2Param1_2_2 private N/A out
+-22_2_2Param1_2_2 private N/A return
+-21_2_2Param1_2_2 package false N/A
+
+-20_2_2Param1_2_2 package N/A in
+-19_2_2Param1_2_2 package N/A out
+-18_2_2Param1_2_2 package N/A return
+-17_2_2Param1_2_2 public false N/A
+
+-16_2_2Param1_2_2 protected true N/A
+-15_2_2Param1_2_2 protected true N/A
+-14_2_2Param1_2_2 protected true N/A
+
+-13_2_2Param1_2_2 private true N/A
+-12_2_2Param1_2_2 private true N/A
+-11_2_2Param1_2_2 private true N/A
+
+-10_2_2Param1_2_2 package false N/A
+
+-9_2_2Param1_2_2 public N/A in
+-8_2_2Param1_2_2 public N/A out
+-7_2_2Param1_2_2 public N/A return
+-6_2_2Param1_2_2 package false N/A
+
+-5_2_2Param1_2_2 private N/A in
+-4_2_2Param1_2_2 private N/A out
+-3_2_2Param1_2_2 private N/A return
+-2_2_2Param1_2_2 package false N/A
+
+-1_2_2Param1_2_2 package N/A in
+0_2_2Param1_2_2 package N/A out
+1_2_2Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementDown.txt
new file mode 100644
index 00000000000..3afb34ab910
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementDown.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+1Class0 protected true N/A
+2Class0 protected true N/A
+3Class0 protected true N/A
+
+4Class0 private true N/A
+5Class0 private true N/A
+6Class0 private true N/A
+
+7Class0 package false N/A
+
+8Class0 public N/A in
+9Class0 public N/A out
+10Class0 public N/A return
+11Class0 package false N/A
+
+12Class0 private N/A in
+13Class0 private N/A out
+14Class0 private N/A return
+15Class0 package false N/A
+
+16Class0 package N/A in
+17Class0 package N/A out
+18Class0 package N/A return
+19Class0 public false N/A
+
+20Class0 protected true N/A
+21Class0 protected true N/A
+22Class0 protected true N/A
+
+23Class0 private true N/A
+24Class0 private true N/A
+25Class0 private true N/A
+
+26Class0 package false N/A
+
+27Class0 public N/A in
+28Class0 public N/A out
+29Class0 public N/A return
+30Class0 package false N/A
+
+31Class0 private N/A in
+32Class0 private N/A out
+33Class0 private N/A return
+34Class0 package false N/A
+
+35Class0 package N/A in
+36Class0 package N/A out
+37Class0 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementUp.txt
new file mode 100644
index 00000000000..db402040c81
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test_ResultIncrementUp.txt
@@ -0,0 +1,51 @@
+
+38_2_2Param1_2_2 public false N/A
+
+37_2_2Param1_2_2 protected true N/A
+36_2_2Param1_2_2 protected true N/A
+35_2_2Param1_2_2 protected true N/A
+
+34_2_2Param1_2_2 private true N/A
+33_2_2Param1_2_2 private true N/A
+32_2_2Param1_2_2 private true N/A
+
+31_2_2Param1_2_2 package false N/A
+
+30_2_2Param1_2_2 public N/A in
+29_2_2Param1_2_2 public N/A out
+28_2_2Param1_2_2 public N/A return
+27_2_2Param1_2_2 package false N/A
+
+26_2_2Param1_2_2 private N/A in
+25_2_2Param1_2_2 private N/A out
+24_2_2Param1_2_2 private N/A return
+23_2_2Param1_2_2 package false N/A
+
+22_2_2Param1_2_2 package N/A in
+21_2_2Param1_2_2 package N/A out
+20_2_2Param1_2_2 package N/A return
+19_2_2Param1_2_2 public false N/A
+
+18_2_2Param1_2_2 protected true N/A
+17_2_2Param1_2_2 protected true N/A
+16_2_2Param1_2_2 protected true N/A
+
+15_2_2Param1_2_2 private true N/A
+14_2_2Param1_2_2 private true N/A
+13_2_2Param1_2_2 private true N/A
+
+12_2_2Param1_2_2 package false N/A
+
+11_2_2Param1_2_2 public N/A in
+10_2_2Param1_2_2 public N/A out
+9_2_2Param1_2_2 public N/A return
+8_2_2Param1_2_2 package false N/A
+
+7_2_2Param1_2_2 private N/A in
+6_2_2Param1_2_2 private N/A out
+5_2_2Param1_2_2 private N/A return
+4_2_2Param1_2_2 package false N/A
+
+3_2_2Param1_2_2 package N/A in
+2_2_2Param1_2_2 package N/A out
+1_2_2Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.di b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.di
new file mode 100644
index 00000000000..bf9abab340f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.notation b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.notation
new file mode 100644
index 00000000000..a0ba9bba32c
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.notation
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<nattable:Table xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:configuration="http://www.eclipse.org/papyrus/infra/viewpoints/configuration" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:nattablelabelprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattablecontentprovider http://www.eclipse.org/papyrus/nattable/model#//nattablelabelprovider" xmi:id="_0tdPAHcSEeSOKsM2DkqZ0A" name="ClassTreeTable" currentRowAxisProvider="_0tdPA3cSEeSOKsM2DkqZ0A" currentColumnAxisProvider="_0tdPAXcSEeSOKsM2DkqZ0A">
+ <context xmi:type="uml:Model" href="FillHandleStringSuffix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <owner xmi:type="uml:Model" href="FillHandleStringSuffix_V1_V3_V1_Test.uml#_W0BLkGZzEeSDCaDFwPGYVw"/>
+ <prototype xmi:type="configuration:PapyrusSyncTable" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/classTreeTable.configuration#_P3J1cEr7EeSVGbM3cmVSqQ"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_0tdPAXcSEeSOKsM2DkqZ0A" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Yk1o8mZzEeSDCaDFwPGYVw">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9OSsHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/visibility"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wHrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/isLeaf"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_c9O5wXrxEeSFP8xW-pegcg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Parameter/direction"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_0tdPA3cSEeSOKsM2DkqZ0A" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowaAxisManager" disconnectSlave="true"/>
+ <localRowHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_yZauQHl4EeWqi9yWvPfrQQ" indexStyle="NUMERIC">
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNWnmiEeWJ7-W-e5W1og" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNUXmiEeWJ7-W-e5W1og" alias="Class">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNUnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNW3miEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNU3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXHmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNVXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNVnmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXXmiEeWJ7-W-e5W1og" depth="1" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNV3miEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:TreeFillingConfiguration" xmi:id="_SBJNWHmiEeWJ7-W-e5W1og" pasteConfiguration="_SBJNXnmiEeWJ7-W-e5W1og" depth="2" labelProviderContext="org.eclipse.papyrus.infra.nattable.header.treefilling.feature.labelprovider">
+ <axisUsedAsAxisProvider xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_SBJNWXmiEeWJ7-W-e5W1og" alias="">
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </axisUsedAsAxisProvider>
+ <labelProvider xmi:type="nattablelabelprovider:FeatureLabelProviderConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@ownedLabelConfigurations.1"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNWnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package/packagedElement"/>
+ <axisIdentifier xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_H1ZVkHmjEeWJ7-W-e5W1og">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+ </axisIdentifier>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNW3miEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Property">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXHmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Class">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXXmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Operation">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+ </ownedAxisConfigurations>
+ <ownedAxisConfigurations xmi:type="nattableaxisconfiguration:PasteEObjectConfiguration" xmi:id="_SBJNXnmiEeWJ7-W-e5W1og" pastedElementId="org.eclipse.papyrus.uml.Parameter">
+ <pasteElementContainementFeature xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioralFeature/ownedParameter"/>
+ </ownedAxisConfigurations>
+ <axisManagerConfigurations xmi:type="nattableaxisconfiguration:AxisManagerConfiguration" xmi:id="_SBHYIHmiEeWJ7-W-e5W1og" localSpecificConfigurations="_SBJNUHmiEeWJ7-W-e5W1og _SBJNUnmiEeWJ7-W-e5W1og _SBJNVHmiEeWJ7-W-e5W1og _SBJNVnmiEeWJ7-W-e5W1og _SBJNWHmiEeWJ7-W-e5W1og">
+ <axisManager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.clazz.config/configs/class_synchronized_tree.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ </axisManagerConfigurations>
+ </localRowHeaderAxisConfiguration>
+</nattable:Table>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.uml b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.uml
new file mode 100644
index 00000000000..c13f23f6dfa
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.uml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_W0BLkGZzEeSDCaDFwPGYVw" name="model">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ANxf4GX6EeWnIND9h9eQPg" name="0Class0">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN0jMGX6EeWnIND9h9eQPg" name="Property0_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN738GX6EeWnIND9h9eQPg" name="Property0_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AN-7QGX6EeWnIND9h9eQPg" name="Property0_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOGQAGX6EeWnIND9h9eQPg" name="Operation0_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOG3EGX6EeWnIND9h9eQPg" name="Param0_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOHeIGX6EeWnIND9h9eQPg" name="Param0_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOIsQGX6EeWnIND9h9eQPg" name="Param0_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOJTUGX6EeWnIND9h9eQPg" name="Operation0_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOKhcGX6EeWnIND9h9eQPg" name="Param0_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOLvkGX6EeWnIND9h9eQPg" name="Param0_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOM9sGX6EeWnIND9h9eQPg" name="Param0_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AONkwGX6EeWnIND9h9eQPg" name="Operation0_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOOy4GX6EeWnIND9h9eQPg" name="Param0_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOPZ8GX6EeWnIND9h9eQPg" name="Param0_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOQBAGX6EeWnIND9h9eQPg" name="Param0_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOBXgGX6EeWnIND9h9eQPg" name="NestedClass0_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AODzwGX6EeWnIND9h9eQPg" name="NestedClass0_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOFB4GX6EeWnIND9h9eQPg" name="NestedClass0_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_AORPIGX6EeWnIND9h9eQPg" name="1Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOR2MGX6EeWnIND9h9eQPg" name="Property1_0" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOTEUGX6EeWnIND9h9eQPg" name="Property1_1" visibility="protected" isLeaf="true"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AOU5gGX6EeWnIND9h9eQPg" name="Property1_2" visibility="protected" isLeaf="true"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOaZEGX6EeWnIND9h9eQPg" name="Operation1_0" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AObnMGX6EeWnIND9h9eQPg" name="Param1_0_0"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOc1UGX6EeWnIND9h9eQPg" name="Param1_0_1" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOdcYGX6EeWnIND9h9eQPg" name="Param1_0_2" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOeqgGX6EeWnIND9h9eQPg" name="Operation1_1" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOfRkGX6EeWnIND9h9eQPg" name="Param1_1_0" visibility="private"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOgfsGX6EeWnIND9h9eQPg" name="Param1_1_1" visibility="private" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOhGwGX6EeWnIND9h9eQPg" name="Param1_1_2" visibility="private" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_AOiU4GX6EeWnIND9h9eQPg" name="Operation1_2" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOjjAGX6EeWnIND9h9eQPg" name="Param1_2_0" visibility="package"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOkxIGX6EeWnIND9h9eQPg" name="Param1_2_1" visibility="package" direction="out"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_AOlYMGX6EeWnIND9h9eQPg" name="1_2_2Param1_2_2" visibility="package" direction="return"/>
+ </ownedOperation>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOWHoGX6EeWnIND9h9eQPg" name="NestedClass1_0" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOXVwGX6EeWnIND9h9eQPg" name="NestedClass1_1" visibility="private" isLeaf="true"/>
+ <nestedClassifier xmi:type="uml:Class" xmi:id="_AOZK8GX6EeWnIND9h9eQPg" name="NestedClass1_2" visibility="private" isLeaf="true"/>
+ </packagedElement>
+</uml:Model>
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_Initial.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_Initial.txt
new file mode 100644
index 00000000000..6764243b7b7
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_Initial.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+Property0_0 protected true N/A
+Property0_1 protected true N/A
+Property0_2 protected true N/A
+
+NestedClass0_0 private true N/A
+NestedClass0_1 private true N/A
+NestedClass0_2 private true N/A
+
+Operation0_0 package false N/A
+
+Param0_0_0 public N/A in
+Param0_0_1 public N/A out
+Param0_0_2 public N/A return
+Operation0_1 package false N/A
+
+Param0_1_0 private N/A in
+Param0_1_1 private N/A out
+Param0_1_2 private N/A return
+Operation0_2 package false N/A
+
+Param0_2_0 package N/A in
+Param0_2_1 package N/A out
+Param0_2_2 package N/A return
+1Class1 public false N/A
+
+Property1_0 protected true N/A
+Property1_1 protected true N/A
+Property1_2 protected true N/A
+
+NestedClass1_0 private true N/A
+NestedClass1_1 private true N/A
+NestedClass1_2 private true N/A
+
+Operation1_0 package false N/A
+
+Param1_0_0 public N/A in
+Param1_0_1 public N/A out
+Param1_0_2 public N/A return
+Operation1_1 package false N/A
+
+Param1_1_0 private N/A in
+Param1_1_1 private N/A out
+Param1_1_2 private N/A return
+Operation1_2 package false N/A
+
+Param1_2_0 package N/A in
+Param1_2_1 package N/A out
+1_2_2Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultCopy.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultCopy.txt
new file mode 100644
index 00000000000..f60d9598515
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultCopy.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+0Class0 protected true N/A
+0Class0 protected true N/A
+0Class0 protected true N/A
+
+0Class0 private true N/A
+0Class0 private true N/A
+0Class0 private true N/A
+
+0Class0 package false N/A
+
+0Class0 public N/A in
+0Class0 public N/A out
+0Class0 public N/A return
+0Class0 package false N/A
+
+0Class0 private N/A in
+0Class0 private N/A out
+0Class0 private N/A return
+0Class0 package false N/A
+
+0Class0 package N/A in
+0Class0 package N/A out
+0Class0 package N/A return
+0Class0 public false N/A
+
+0Class0 protected true N/A
+0Class0 protected true N/A
+0Class0 protected true N/A
+
+0Class0 private true N/A
+0Class0 private true N/A
+0Class0 private true N/A
+
+0Class0 package false N/A
+
+0Class0 public N/A in
+0Class0 public N/A out
+0Class0 public N/A return
+0Class0 package false N/A
+
+0Class0 private N/A in
+0Class0 private N/A out
+0Class0 private N/A return
+0Class0 package false N/A
+
+0Class0 package N/A in
+0Class0 package N/A out
+0Class0 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementDown.txt
new file mode 100644
index 00000000000..6db901d4a6c
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementDown.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+0Class-1 protected true N/A
+0Class-2 protected true N/A
+0Class-3 protected true N/A
+
+0Class-4 private true N/A
+0Class-5 private true N/A
+0Class-6 private true N/A
+
+0Class-7 package false N/A
+
+0Class-8 public N/A in
+0Class-9 public N/A out
+0Class-10 public N/A return
+0Class-11 package false N/A
+
+0Class-12 private N/A in
+0Class-13 private N/A out
+0Class-14 private N/A return
+0Class-15 package false N/A
+
+0Class-16 package N/A in
+0Class-17 package N/A out
+0Class-18 package N/A return
+0Class-19 public false N/A
+
+0Class-20 protected true N/A
+0Class-21 protected true N/A
+0Class-22 protected true N/A
+
+0Class-23 private true N/A
+0Class-24 private true N/A
+0Class-25 private true N/A
+
+0Class-26 package false N/A
+
+0Class-27 public N/A in
+0Class-28 public N/A out
+0Class-29 public N/A return
+0Class-30 package false N/A
+
+0Class-31 private N/A in
+0Class-32 private N/A out
+0Class-33 private N/A return
+0Class-34 package false N/A
+
+0Class-35 package N/A in
+0Class-36 package N/A out
+0Class-37 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementUp.txt
new file mode 100644
index 00000000000..c8bc26cb748
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultDecrementUp.txt
@@ -0,0 +1,51 @@
+
+1_2_2Param1_2_-35 public false N/A
+
+1_2_2Param1_2_-34 protected true N/A
+1_2_2Param1_2_-33 protected true N/A
+1_2_2Param1_2_-32 protected true N/A
+
+1_2_2Param1_2_-31 private true N/A
+1_2_2Param1_2_-30 private true N/A
+1_2_2Param1_2_-29 private true N/A
+
+1_2_2Param1_2_-28 package false N/A
+
+1_2_2Param1_2_-27 public N/A in
+1_2_2Param1_2_-26 public N/A out
+1_2_2Param1_2_-25 public N/A return
+1_2_2Param1_2_-24 package false N/A
+
+1_2_2Param1_2_-23 private N/A in
+1_2_2Param1_2_-22 private N/A out
+1_2_2Param1_2_-21 private N/A return
+1_2_2Param1_2_-20 package false N/A
+
+1_2_2Param1_2_-19 package N/A in
+1_2_2Param1_2_-18 package N/A out
+1_2_2Param1_2_-17 package N/A return
+1_2_2Param1_2_-16 public false N/A
+
+1_2_2Param1_2_-15 protected true N/A
+1_2_2Param1_2_-14 protected true N/A
+1_2_2Param1_2_-13 protected true N/A
+
+1_2_2Param1_2_-12 private true N/A
+1_2_2Param1_2_-11 private true N/A
+1_2_2Param1_2_-10 private true N/A
+
+1_2_2Param1_2_-9 package false N/A
+
+1_2_2Param1_2_-8 public N/A in
+1_2_2Param1_2_-7 public N/A out
+1_2_2Param1_2_-6 public N/A return
+1_2_2Param1_2_-5 package false N/A
+
+1_2_2Param1_2_-4 private N/A in
+1_2_2Param1_2_-3 private N/A out
+1_2_2Param1_2_-2 private N/A return
+1_2_2Param1_2_-1 package false N/A
+
+1_2_2Param1_2_0 package N/A in
+1_2_2Param1_2_1 package N/A out
+1_2_2Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementDown.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementDown.txt
new file mode 100644
index 00000000000..047d918a19d
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementDown.txt
@@ -0,0 +1,51 @@
+
+0Class0 public false N/A
+
+0Class1 protected true N/A
+0Class2 protected true N/A
+0Class3 protected true N/A
+
+0Class4 private true N/A
+0Class5 private true N/A
+0Class6 private true N/A
+
+0Class7 package false N/A
+
+0Class8 public N/A in
+0Class9 public N/A out
+0Class10 public N/A return
+0Class11 package false N/A
+
+0Class12 private N/A in
+0Class13 private N/A out
+0Class14 private N/A return
+0Class15 package false N/A
+
+0Class16 package N/A in
+0Class17 package N/A out
+0Class18 package N/A return
+0Class19 public false N/A
+
+0Class20 protected true N/A
+0Class21 protected true N/A
+0Class22 protected true N/A
+
+0Class23 private true N/A
+0Class24 private true N/A
+0Class25 private true N/A
+
+0Class26 package false N/A
+
+0Class27 public N/A in
+0Class28 public N/A out
+0Class29 public N/A return
+0Class30 package false N/A
+
+0Class31 private N/A in
+0Class32 private N/A out
+0Class33 private N/A return
+0Class34 package false N/A
+
+0Class35 package N/A in
+0Class36 package N/A out
+0Class37 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementUp.txt b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementUp.txt
new file mode 100644
index 00000000000..f627aac89c1
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test_ResultIncrementUp.txt
@@ -0,0 +1,51 @@
+
+1_2_2Param1_2_39 public false N/A
+
+1_2_2Param1_2_38 protected true N/A
+1_2_2Param1_2_37 protected true N/A
+1_2_2Param1_2_36 protected true N/A
+
+1_2_2Param1_2_35 private true N/A
+1_2_2Param1_2_34 private true N/A
+1_2_2Param1_2_33 private true N/A
+
+1_2_2Param1_2_32 package false N/A
+
+1_2_2Param1_2_31 public N/A in
+1_2_2Param1_2_30 public N/A out
+1_2_2Param1_2_29 public N/A return
+1_2_2Param1_2_28 package false N/A
+
+1_2_2Param1_2_27 private N/A in
+1_2_2Param1_2_26 private N/A out
+1_2_2Param1_2_25 private N/A return
+1_2_2Param1_2_24 package false N/A
+
+1_2_2Param1_2_23 package N/A in
+1_2_2Param1_2_22 package N/A out
+1_2_2Param1_2_21 package N/A return
+1_2_2Param1_2_20 public false N/A
+
+1_2_2Param1_2_19 protected true N/A
+1_2_2Param1_2_18 protected true N/A
+1_2_2Param1_2_17 protected true N/A
+
+1_2_2Param1_2_16 private true N/A
+1_2_2Param1_2_15 private true N/A
+1_2_2Param1_2_14 private true N/A
+
+1_2_2Param1_2_13 package false N/A
+
+1_2_2Param1_2_12 public N/A in
+1_2_2Param1_2_11 public N/A out
+1_2_2Param1_2_10 public N/A return
+1_2_2Param1_2_9 package false N/A
+
+1_2_2Param1_2_8 private N/A in
+1_2_2Param1_2_7 private N/A out
+1_2_2Param1_2_6 private N/A return
+1_2_2Param1_2_5 package false N/A
+
+1_2_2Param1_2_4 package N/A in
+1_2_2Param1_2_3 package N/A out
+1_2_2Param1_2_2 package N/A return \ No newline at end of file
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/AbstractFillHandleTest.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/AbstractFillHandleTest.java
new file mode 100644
index 00000000000..362d52875ec
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/AbstractFillHandleTest.java
@@ -0,0 +1,439 @@
+/*****************************************************************************
+ * Copyright (c) 2016 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:
+ * Nicolas FAUVERGUE (ALL4TEC) nicolas.fauvergue@all4tec.net - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle;
+
+import java.awt.Toolkit;
+import java.awt.datatransfer.StringSelection;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.nebula.widgets.nattable.NatTable;
+import org.eclipse.nebula.widgets.nattable.command.ILayerCommand;
+import org.eclipse.nebula.widgets.nattable.copy.command.CopyDataToClipboardCommand;
+import org.eclipse.nebula.widgets.nattable.selection.command.ClearAllSelectionsCommand;
+import org.eclipse.papyrus.infra.nattable.common.editor.NatTableEditor;
+import org.eclipse.papyrus.infra.nattable.manager.table.INattableModelManager;
+import org.eclipse.papyrus.infra.nattable.manager.table.ITreeNattableModelManager;
+import org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager;
+import org.eclipse.papyrus.infra.nattable.tree.CollapseAndExpandActionsEnum;
+import org.eclipse.papyrus.infra.nattable.utils.TableClipboardUtils;
+import org.eclipse.papyrus.infra.tools.util.FileUtils;
+import org.eclipse.papyrus.junit.utils.GenericUtils;
+import org.eclipse.papyrus.junit.utils.rules.ActiveTable;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.Activator;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.tests.AbstractTableTest;
+import org.eclipse.ui.IEditorPart;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * This allows to manage the fill handle (copy or increment/decrement) tests.
+ */
+public abstract class AbstractFillHandleTest extends AbstractTableTest {
+
+ /**
+ * The path of the model to test.
+ */
+ public static final String PASTE_FOLDER_PATH = "/resources/fillhandle/"; //$NON-NLS-1$
+
+ /**
+ * The table name.
+ */
+ protected static final String TABLE_NAME = "ClassTreeTable"; //$NON-NLS-1$
+
+ /**
+ * The suffix of the file containing the initial.
+ */
+ public static final String INITIAL_POST_FILE_NAME = "_Initial"; //$NON-NLS-1$
+
+ /**
+ * The suffix of the file containing the result content after a copy.
+ */
+ public static final String RESULT_COPY_POST_FILE_NAME = "_ResultCopy"; //$NON-NLS-1$
+
+ /**
+ * The suffix of the file containing the result content after an increment in UP direction.
+ */
+ public static final String RESULT_INCREMENT_UP_POST_FILE_NAME = "_ResultIncrementUp"; //$NON-NLS-1$
+
+ /**
+ * The suffix of the file containing the result content after an increment in DOWN direction.
+ */
+ public static final String RESULT_INCREMENT_DOWN_POST_FILE_NAME = "_ResultIncrementDown"; //$NON-NLS-1$
+
+ /**
+ * The suffix of the file containing the result content after a decrement in UP direction.
+ */
+ public static final String RESULT_DECREMENT_UP_POST_FILE_NAME = "_ResultDecrementUp"; //$NON-NLS-1$
+
+ /**
+ * The suffix of the file containing the result content after a decrement in DOW direction.
+ */
+ public static final String RESULT_DECREMENT_DOWN_POST_FILE_NAME = "_ResultDecrementDown"; //$NON-NLS-1$
+
+ /**
+ * Constructor.
+ */
+ public AbstractFillHandleTest() {
+ super();
+ }
+
+ /**
+ * This allows to test the copy.
+ *
+ * @throws Exception
+ * The caught exception
+ */
+ @Test
+ @ActiveTable("ClassTreeTable") //$NON-NLS-1$
+ public void testCopy() throws Exception {
+ final IEditorPart tableEditor = fixture.getActiveTableEditor();
+ Assert.assertTrue("Table editor must be a nattable editor", tableEditor instanceof NatTableEditor); //$NON-NLS-1$
+ final INattableModelManager manager = (INattableModelManager) tableEditor.getAdapter(INattableModelManager.class);
+ Assert.assertTrue("The manager must be a tree nattable model manager", manager instanceof ITreeNattableModelManager); //$NON-NLS-1$
+
+ final TreeNattableModelManager treeManager = (TreeNattableModelManager) manager;
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+
+ executeCommand(treeManager, getCopyCommand(natTable), RESULT_COPY_POST_FILE_NAME, false);
+ }
+
+ /**
+ * This allows to test the increment series
+ *
+ * @throws Exception
+ * The caught exception
+ */
+ @Test
+ @ActiveTable("ClassTreeTable") //$NON-NLS-1$
+ public void testIncrementUp() throws Exception {
+ final IEditorPart tableEditor = fixture.getActiveTableEditor();
+ Assert.assertTrue("Table editor must be a nattable editor", tableEditor instanceof NatTableEditor); //$NON-NLS-1$
+ final INattableModelManager manager = (INattableModelManager) tableEditor.getAdapter(INattableModelManager.class);
+ Assert.assertTrue("The manager must be a tree nattable model manager", manager instanceof ITreeNattableModelManager); //$NON-NLS-1$
+
+ final TreeNattableModelManager treeManager = (TreeNattableModelManager) manager;
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+
+ executeCommand(treeManager, getIncrementUpCommand(natTable), RESULT_INCREMENT_UP_POST_FILE_NAME, true);
+ }
+
+ /**
+ * This allows to test the increment series
+ *
+ * @throws Exception
+ * The caught exception
+ */
+ @Test
+ @ActiveTable("ClassTreeTable") //$NON-NLS-1$
+ public void testIncrementDown() throws Exception {
+ final IEditorPart tableEditor = fixture.getActiveTableEditor();
+ Assert.assertTrue("Table editor must be a nattable editor", tableEditor instanceof NatTableEditor); //$NON-NLS-1$
+ final INattableModelManager manager = (INattableModelManager) tableEditor.getAdapter(INattableModelManager.class);
+ Assert.assertTrue("The manager must be a tree nattable model manager", manager instanceof ITreeNattableModelManager); //$NON-NLS-1$
+
+ final TreeNattableModelManager treeManager = (TreeNattableModelManager) manager;
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+
+ executeCommand(treeManager, getIncrementDownCommand(natTable), RESULT_INCREMENT_DOWN_POST_FILE_NAME, false);
+ }
+
+ /**
+ * This allows to test the decrement series
+ *
+ * @throws Exception
+ * The caught exception
+ */
+ @Test
+ @ActiveTable("ClassTreeTable") //$NON-NLS-1$
+ public void testDecrementUp() throws Exception {
+ final IEditorPart tableEditor = fixture.getActiveTableEditor();
+ Assert.assertTrue("Table editor must be a nattable editor", tableEditor instanceof NatTableEditor); //$NON-NLS-1$
+ final INattableModelManager manager = (INattableModelManager) tableEditor.getAdapter(INattableModelManager.class);
+ Assert.assertTrue("The manager must be a tree nattable model manager", manager instanceof ITreeNattableModelManager); //$NON-NLS-1$
+
+ final TreeNattableModelManager treeManager = (TreeNattableModelManager) manager;
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+
+ executeCommand(treeManager, getDecrementUpCommand(natTable), RESULT_DECREMENT_UP_POST_FILE_NAME, true);
+ }
+
+ /**
+ * This allows to test the decrement series
+ *
+ * @throws Exception
+ * The caught exception
+ */
+ @Test
+ @ActiveTable("ClassTreeTable") //$NON-NLS-1$
+ public void testDecrementDown() throws Exception {
+ final IEditorPart tableEditor = fixture.getActiveTableEditor();
+ Assert.assertTrue("Table editor must be a nattable editor", tableEditor instanceof NatTableEditor); //$NON-NLS-1$
+ final INattableModelManager manager = (INattableModelManager) tableEditor.getAdapter(INattableModelManager.class);
+ Assert.assertTrue("The manager must be a tree nattable model manager", manager instanceof ITreeNattableModelManager); //$NON-NLS-1$
+
+ final TreeNattableModelManager treeManager = (TreeNattableModelManager) manager;
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+
+ executeCommand(treeManager, getDecrementDownCommand(natTable), RESULT_DECREMENT_DOWN_POST_FILE_NAME, false);
+ }
+
+ /**
+ * This allows to execute a command and check its result.
+ *
+ * @param command
+ * The command to execute.
+ * @param resultFileName
+ * The post file name of the result.
+ * @throws Exception
+ * The caught exception.
+ */
+ protected void executeCommand(final TreeNattableModelManager treeManager, final ILayerCommand command, final String resultPostFileName, final boolean isUpDirection) throws Exception {
+
+ // Check the table context before command
+ checkTableContent(treeManager, INITIAL_POST_FILE_NAME);
+
+ if (isUpDirection) {
+ selectCellToFillToUp(treeManager);
+ } else {
+ selectCellToFillToDown(treeManager);
+ }
+
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+ natTable.doCommand(new CopyDataToClipboardCommand(
+ "\t", //$NON-NLS-1$
+ System.getProperty("line.separator"), //$NON-NLS-1$
+ natTable.getConfigRegistry()));
+
+ if (isUpDirection) {
+ setFillHandlerRegionToUp(treeManager);
+ } else {
+ setFillHandlerRegionToDown(treeManager);
+ }
+
+ // Execute the copy command
+ natTable.doCommand(command);
+
+ // Check the table context before command
+ checkTableContent(treeManager, resultPostFileName);
+
+ // Check the undo/redo
+ checkUndoRedo(treeManager, resultPostFileName);
+ }
+
+ /**
+ * This allows to check the undo redo result.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ * @param resultPostFileName
+ * The post file name of the result.
+ * @throws Exception
+ * The caught exception.
+ */
+ protected void checkUndoRedo(final TreeNattableModelManager treeManager, final String resultPostFileName) throws Exception {
+
+ TransactionalEditingDomain editingDomain = fixture.getEditingDomain();
+
+ // Check the undo
+ editingDomain.getCommandStack().undo();
+ // Check the table context after undo
+ checkTableContent(treeManager, INITIAL_POST_FILE_NAME);
+
+ // Check the redo
+ editingDomain.getCommandStack().redo();
+ // Check the table context after redo
+ checkTableContent(treeManager, resultPostFileName);
+ }
+
+ /**
+ * Get the selected cell to fill when the action is managed to UP direction.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ */
+ protected abstract void selectCellToFillToUp(final TreeNattableModelManager treeManager);
+
+ /**
+ * Get the selected cell to fill when the action is managed to DOWN direction.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ */
+ protected abstract void selectCellToFillToDown(final TreeNattableModelManager treeManager);
+
+ /**
+ * Set the fill handler region when the action is managed to UP direction.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ */
+ protected abstract void setFillHandlerRegionToUp(final TreeNattableModelManager treeManager);
+
+ /**
+ * Set the fill handler region when the action is managed to DOWN direction.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ */
+ protected abstract void setFillHandlerRegionToDown(final TreeNattableModelManager treeManager);
+
+ /**
+ * Get the copy command.
+ *
+ * @param natTable
+ * The nattable.
+ * @return The copy command.
+ */
+ protected abstract ILayerCommand getCopyCommand(final NatTable natTable);
+
+ /**
+ * Get the increment command with UP direction.
+ *
+ * @param natTable
+ * The nattable.
+ * @return The increment command with UP direction.
+ */
+ protected abstract ILayerCommand getIncrementUpCommand(final NatTable natTable);
+
+ /**
+ * Get the increment command with DOWN direction.
+ *
+ * @param natTable
+ * The nattable.
+ * @return The increment command with DOWN direction.
+ */
+ protected abstract ILayerCommand getIncrementDownCommand(final NatTable natTable);
+
+ /**
+ * Get the decrement command with UP direction.
+ *
+ * @param natTable
+ * The nattable.
+ * @return The decrement command with UP direction.
+ */
+ protected abstract ILayerCommand getDecrementUpCommand(final NatTable natTable);
+
+ /**
+ * Get the decrement command with DOWN direction.
+ *
+ * @param natTable
+ * The nattable.
+ * @return The decrement command with DOWN direction.
+ */
+ protected abstract ILayerCommand getDecrementDownCommand(final NatTable natTable);
+
+ /**
+ * This allows to check the table content comparing the table content with file content.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ * @param suffixFileName
+ * The suffix of the file to check.
+ * @throws Exception
+ * The caught exception.
+ */
+ protected void checkTableContent(final TreeNattableModelManager treeManager, final String suffixFileName) throws Exception {
+ fixture.flushDisplayEvents();
+ treeManager.doCollapseExpandAction(CollapseAndExpandActionsEnum.EXPAND_ALL, null);
+ final NatTable natTable = (NatTable) treeManager.getAdapter(NatTable.class);
+ fixture.flushDisplayEvents();
+ natTable.doCommand(new ClearAllSelectionsCommand());
+ treeManager.selectAll();
+ treeManager.copyToClipboard();
+ String clipboard = getClipboardContent();
+ // we check than the contents of the clipboard (so the displayed table) is the same than the wanted result
+ Assert.assertNotNull("Clipboard must not be null", clipboard); //$NON-NLS-1$
+ String str = getWantedString(getSuffixStateFileName(treeManager, suffixFileName));
+ // we check than the contents of the clipboard (so the displayed table) is the same than the wanted result
+ Assert.assertEquals("The clipboard must be equals to string which one it is filled", str, clipboard); //$NON-NLS-1$
+ }
+
+ /**
+ * Get the string content from a file.
+ *
+ * @param fileName
+ * a file name
+ * @return
+ * the text stored in the file associated to this test
+ */
+ protected String getWantedString(final String fileName) {
+ return FileUtils.getStringFromPlatformFile(Activator.PLUGIN_ID, getSourcePath(), fileName, FileUtils.getSystemPropertyLineSeparator());// $NON-NLS-1$
+ }
+
+ /**
+ * Get the file name corresponding to the model with the suffix in parameter.
+ *
+ * @param treeManager
+ * The tree nattable model manager.
+ * @param suffixFileName
+ * The suffix of the file to get.
+ * @return The file name corresponding
+ */
+ protected String getSuffixStateFileName(final TreeNattableModelManager treeManager, final String suffixFileName) {
+ URI uri = URI.createURI(getClass().getSimpleName());
+ uri = uri.trimFileExtension();
+ final StringBuffer buffer = new StringBuffer(uri.lastSegment());
+ buffer.append(suffixFileName);
+ buffer.append(FileUtils.DOT_STRING);
+ buffer.append(FileUtils.TEXT_EXTENSION);
+ return buffer.toString();
+ }
+
+ /**
+ * Get the clipboard contents.
+ *
+ * @return
+ * the clipboard contents.
+ */
+ protected String getClipboardContent() {
+ String clipboard = TableClipboardUtils.getClipboardContentsAsString();
+ return clipboard;
+ }
+
+ /**
+ * This allows to fill the clipboard with the string in parameter.
+ *
+ * @param newClipBoardContents
+ * The string needed to fill the clipboard.
+ */
+ protected void fillClipboard(final String newClipBoardContents) {
+
+ // its seems that the clipboard must be filled with the same way than we read it!
+ java.awt.datatransfer.Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
+
+ StringSelection s = new StringSelection(newClipBoardContents);
+ clipboard.setContents(s, s);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.tests.AbstractOpenTableTest#getSourcePath()
+ */
+ @Override
+ protected String getSourcePath() {
+ return PASTE_FOLDER_PATH;
+ }
+
+ /**
+ * This allows to close the editors.
+ */
+ @AfterClass
+ public static void endOfTest() {
+ GenericUtils.closeAllEditors();
+ }
+
+}
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleInteger_V1_V3_V1_Test.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleInteger_V1_V3_V1_Test.java
new file mode 100644
index 00000000000..ffb6f8160c0
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleInteger_V1_V3_V1_Test.java
@@ -0,0 +1,128 @@
+/*****************************************************************************
+ * Copyright (c) 2016 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:
+ * Nicolas FAUVERGUE (ALL4TEC) nicolas.fauvergue@all4tec.net - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle;
+
+import org.eclipse.nebula.widgets.nattable.NatTable;
+import org.eclipse.nebula.widgets.nattable.command.ILayerCommand;
+import org.eclipse.nebula.widgets.nattable.fillhandle.command.FillHandlePasteCommand.FillHandleOperation;
+import org.eclipse.nebula.widgets.nattable.selection.SelectionLayer.MoveDirectionEnum;
+import org.eclipse.papyrus.infra.nattable.fillhandle.command.PapyrusFillHandlePasteCommand;
+import org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.swt.graphics.Rectangle;
+import org.junit.Before;
+
+/**
+ * This allows to manage the fill handle tests for integer column.
+ */
+@PluginResource("resources/fillhandle/FillHandleInteger_V1_V3_V1_Test.di") // NON-NLS-1
+public class FillHandleInteger_V1_V3_V1_Test extends AbstractFillHandleTest {
+
+ /**
+ * Constructor.
+ */
+ public FillHandleInteger_V1_V3_V1_Test() {
+ super();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 50);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 1);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getCopyCommand()
+ */
+ @Override
+ protected ILayerCommand getCopyCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.COPY, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), true, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), true, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), false, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, false);
+ }
+}
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.java
new file mode 100644
index 00000000000..8169f554c6e
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.java
@@ -0,0 +1,121 @@
+/*****************************************************************************
+ * Copyright (c) 2016 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:
+ * Nicolas FAUVERGUE (ALL4TEC) nicolas.fauvergue@all4tec.net - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle;
+
+import org.eclipse.nebula.widgets.nattable.NatTable;
+import org.eclipse.nebula.widgets.nattable.command.ILayerCommand;
+import org.eclipse.nebula.widgets.nattable.fillhandle.command.FillHandlePasteCommand.FillHandleOperation;
+import org.eclipse.nebula.widgets.nattable.selection.SelectionLayer.MoveDirectionEnum;
+import org.eclipse.papyrus.infra.nattable.fillhandle.command.PapyrusFillHandlePasteCommand;
+import org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.swt.graphics.Rectangle;
+
+/**
+ * This allows to manage the fill handle tests for string column (the number is before the string value).
+ */
+@PluginResource("resources/fillhandle/FillHandleStringOnlyPrefix_V1_V3_V1_Test.di") // NON-NLS-1
+public class FillHandleStringOnlyPrefix_V1_V3_V1_Test extends AbstractFillHandleTest {
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 50);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 1);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getCopyCommand()
+ */
+ @Override
+ protected ILayerCommand getCopyCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.COPY, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), true, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), true, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), false, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, true);
+ }
+
+}
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.java
new file mode 100644
index 00000000000..148f0972930
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.java
@@ -0,0 +1,128 @@
+/*****************************************************************************
+ * Copyright (c) 2016 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:
+ * Nicolas FAUVERGUE (ALL4TEC) nicolas.fauvergue@all4tec.net - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle;
+
+import org.eclipse.nebula.widgets.nattable.NatTable;
+import org.eclipse.nebula.widgets.nattable.command.ILayerCommand;
+import org.eclipse.nebula.widgets.nattable.fillhandle.command.FillHandlePasteCommand.FillHandleOperation;
+import org.eclipse.nebula.widgets.nattable.selection.SelectionLayer.MoveDirectionEnum;
+import org.eclipse.papyrus.infra.nattable.fillhandle.command.PapyrusFillHandlePasteCommand;
+import org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.swt.graphics.Rectangle;
+
+/**
+ * This allows to manage the fill handle tests for string column (the number is after the string value).
+ */
+@PluginResource("resources/fillhandle/FillHandleStringOnlySuffix_V1_V3_V1_Test.di") // NON-NLS-1
+public class FillHandleStringOnlySuffix_V1_V3_V1_Test extends AbstractFillHandleTest {
+
+ /**
+ * Constructor.
+ */
+ public FillHandleStringOnlySuffix_V1_V3_V1_Test() {
+ super();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 50);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 1);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getCopyCommand()
+ */
+ @Override
+ protected ILayerCommand getCopyCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.COPY, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), true, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), true, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), false, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, false);
+ }
+
+}
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.java
new file mode 100644
index 00000000000..db85885b11f
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.java
@@ -0,0 +1,128 @@
+/*****************************************************************************
+ * Copyright (c) 2016 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:
+ * Nicolas FAUVERGUE (ALL4TEC) nicolas.fauvergue@all4tec.net - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle;
+
+import org.eclipse.nebula.widgets.nattable.NatTable;
+import org.eclipse.nebula.widgets.nattable.command.ILayerCommand;
+import org.eclipse.nebula.widgets.nattable.fillhandle.command.FillHandlePasteCommand.FillHandleOperation;
+import org.eclipse.nebula.widgets.nattable.selection.SelectionLayer.MoveDirectionEnum;
+import org.eclipse.papyrus.infra.nattable.fillhandle.command.PapyrusFillHandlePasteCommand;
+import org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.swt.graphics.Rectangle;
+
+/**
+ * This allows to manage the fill handle tests for string column (the number managed is before the string value (and another one exist after the string value).
+ */
+@PluginResource("resources/fillhandle/FillHandleStringPrefix_V1_V3_V1_Test.di") // NON-NLS-1
+public class FillHandleStringPrefix_V1_V3_V1_Test extends AbstractFillHandleTest {
+
+ /**
+ * Constructor.
+ */
+ public FillHandleStringPrefix_V1_V3_V1_Test() {
+ super();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 50);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 1);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getCopyCommand()
+ */
+ @Override
+ protected ILayerCommand getCopyCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.COPY, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), true, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), true, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), false, true);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, true);
+ }
+
+}
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.java
new file mode 100644
index 00000000000..2cca846db9e
--- /dev/null
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.java
@@ -0,0 +1,128 @@
+/*****************************************************************************
+ * Copyright (c) 2016 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:
+ * Nicolas FAUVERGUE (ALL4TEC) nicolas.fauvergue@all4tec.net - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle;
+
+import org.eclipse.nebula.widgets.nattable.NatTable;
+import org.eclipse.nebula.widgets.nattable.command.ILayerCommand;
+import org.eclipse.nebula.widgets.nattable.fillhandle.command.FillHandlePasteCommand.FillHandleOperation;
+import org.eclipse.nebula.widgets.nattable.selection.SelectionLayer.MoveDirectionEnum;
+import org.eclipse.papyrus.infra.nattable.fillhandle.command.PapyrusFillHandlePasteCommand;
+import org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.swt.graphics.Rectangle;
+
+/**
+ * This allows to manage the fill handle tests for string column (the number managed is after the string value (and another one exist before the string value).
+ */
+@PluginResource("resources/fillhandle/FillHandleStringSuffix_V1_V3_V1_Test.di") // NON-NLS-1
+public class FillHandleStringSuffix_V1_V3_V1_Test extends AbstractFillHandleTest {
+
+ /**
+ * Constructor.
+ */
+ public FillHandleStringSuffix_V1_V3_V1_Test() {
+ super();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 50);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#selectCellToFillToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void selectCellToFillToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setSelectedCell(0, 1);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToUp(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToUp(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#setFillHandlerRegionToDown(org.eclipse.papyrus.infra.nattable.manager.table.TreeNattableModelManager)
+ */
+ @Override
+ protected void setFillHandlerRegionToDown(final TreeNattableModelManager treeManager) {
+ treeManager.getBodyLayerStack().getSelectionLayer().setFillHandleRegion(new Rectangle(0, 1, 1, 50));
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getCopyCommand()
+ */
+ @Override
+ protected ILayerCommand getCopyCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.COPY, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), true, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getIncrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getIncrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), true, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementUpCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementUpCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.UP, natTable.getConfigRegistry(), false, false);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.AbstractFillHandleTest#getDecrementDownCommand(org.eclipse.nebula.widgets.nattable.NatTable)
+ */
+ @Override
+ protected ILayerCommand getDecrementDownCommand(final NatTable natTable) {
+ return new PapyrusFillHandlePasteCommand(FillHandleOperation.SERIES, MoveDirectionEnum.DOWN, natTable.getConfigRegistry(), false, false);
+ }
+
+}
diff --git a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/tests/AllTests.java b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/tests/AllTests.java
index fcca5f4bc54..b811b93bdd2 100644
--- a/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/tests/AllTests.java
+++ b/tests/junit/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable.clazz.config.tests/src/org/eclipse/papyrus/uml/nattable/clazz/config/tests/tests/AllTests.java
@@ -39,6 +39,11 @@ import org.eclipse.papyrus.uml.nattable.clazz.config.tests.creation.outside.Crea
import org.eclipse.papyrus.uml.nattable.clazz.config.tests.creation.outside.CreateElementDepth2_V1_H3_V1_Test;
import org.eclipse.papyrus.uml.nattable.clazz.config.tests.creation.outside.CreateElementDepth2_V1_V3_H1_Test;
import org.eclipse.papyrus.uml.nattable.clazz.config.tests.creation.outside.CreateElementDepth2_V1_V3_V1_Test;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.FillHandleInteger_V1_V3_V1_Test;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.FillHandleStringOnlyPrefix_V1_V3_V1_Test;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.FillHandleStringOnlySuffix_V1_V3_V1_Test;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.FillHandleStringPrefix_V1_V3_V1_Test;
+import org.eclipse.papyrus.uml.nattable.clazz.config.tests.fillhandle.FillHandleStringSuffix_V1_V3_V1_Test;
import org.eclipse.papyrus.uml.nattable.clazz.config.tests.filter.ReopenFilteredTable_Empty_H1_H1;
import org.eclipse.papyrus.uml.nattable.clazz.config.tests.filter.ReopenFilteredTable_Empty_H1_V1;
import org.eclipse.papyrus.uml.nattable.clazz.config.tests.filter.ReopenFilteredTable_Empty_V1_H1;
@@ -250,6 +255,13 @@ import org.junit.runners.Suite.SuiteClasses;
ReopenFilteredTable_V1_V1_H1.class,
ReopenFilteredTable_V1_V1_V1.class,
+ // Fill handle tests
+ FillHandleInteger_V1_V3_V1_Test.class,
+ FillHandleStringOnlySuffix_V1_V3_V1_Test.class,
+ FillHandleStringOnlyPrefix_V1_V3_V1_Test.class,
+ FillHandleStringSuffix_V1_V3_V1_Test.class,
+ FillHandleStringPrefix_V1_V3_V1_Test.class,
+
// Attached Mode
// Paste tests for single column
PasteWithCategories_Empty_H1_H1_SingleColumn_AttachedMode_Test.class,

Back to the top