[interoperability] Add diagram definition plugins  to the repository

- moved the dd plugins to a new plugins folder and created a feature folder
- rewired the poms to this change
- added a feature and a p2 reference
- added a specific dd profile for build purposes

Signed-off-by: Quentin Le Menez <quentin.lemenez@cea.fr>
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/.project b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/.project
new file mode 100755
index 0000000..439535b
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.interoperability.dd.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
\ No newline at end of file
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/build.properties b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/build.properties
new file mode 100755
index 0000000..cffb917
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/build.properties
@@ -0,0 +1,6 @@
+bin.includes = feature.xml,\
+               epl-v10.html,\
+               license.html,\
+               feature.properties
+src.includes = epl-v10.html,\
+               license.html
\ No newline at end of file
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/epl-v10.html b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/epl-v10.html
new file mode 100755
index 0000000..cb1073a
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/epl-v10.html
@@ -0,0 +1,304 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<link rel=File-List
+href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
+<title>Eclipse Public License - Version 1.0</title>
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+	{
+	panose-1:2 11 6 4 3 5 4 4 2 4;
+	mso-font-charset:0;
+	mso-font-pitch:variable;
+	mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+	{mso-style-parent:"";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	}
+p
+	{margin-right:0in;
+	mso-margin-top-alt:auto;
+	mso-margin-bottom-alt:auto;
+	margin-left:0in;
+	mso-pagination:widow-orphan;
+	font-size:12.0pt;
+	}
+p.BalloonText, li.BalloonText, div.BalloonText
+	{mso-style-name:"Balloon Text";
+	margin:0in;
+	margin-bottom:.0001pt;
+	mso-pagination:widow-orphan;
+	font-size:8.0pt;
+	
+	}
+@page Section1
+	{size:8.5in 11.0in;
+	margin:1.0in 1.25in 1.0in 1.25in;
+	mso-header-margin:.5in;
+	mso-footer-margin:.5in;
+	mso-paper-source:0;}
+div.Section1
+	{page:Section1;}
+-->
+</style>
+</head>
+
+<body lang="EN-US" style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear=left>
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+changes to the Program, and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+additions to the Program;</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span
+style='color:red'> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+its license agreement:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
+
+<p><span style='font-size:10.0pt'>When the Program is made available in source
+code form:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it must be made available under this Agreement; and </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style='font-size:10.0pt'>Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor (&quot;Commercial
+Contributor&quot;) hereby agrees to defend and indemnify every other
+Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
+costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style='font-size:10.0pt'>For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
+
+<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class=MsoNormal></p>
+
+</div>
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/feature.properties b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/feature.properties
new file mode 100755
index 0000000..7e5624b
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/feature.properties
@@ -0,0 +1,143 @@
+###############################################################################
+# Copyright (c) 2013 CEA LIST.
+# All rights reserved. This program and the accompanying materials 
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+# 
+# Contributors:
+#     CEA LIST - initial API and implementation
+###############################################################################
+featureName=Papyrus Diagram Definition (DD)
+providerName=Eclipse Modeling Project
+
+# "licenseURL" property - URL of the "Feature License"
+# do not translate value - just change to point to a locale-specific HTML page
+licenseURL=license.html
+
+# "license" property - text of the "Feature Update License"
+# should be plain text version of license agreement pointed to be "licenseURL"
+license=\
+Eclipse Foundation Software User Agreement\n\
+April 9, 2014\n\
+\n\
+Usage Of Content\n\
+\n\
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
+NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU\n\
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
+OR NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE\n\
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
+BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
+\n\
+Applicable Licenses\n\
+\n\
+Unless otherwise indicated, all Content made available by the\n\
+Eclipse Foundation is provided to you under the terms and conditions of\n\
+the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
+provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
+For purposes of the EPL, "Program" will mean the Content.\n\
+\n\
+Content includes, but is not limited to, source code, object code,\n\
+documentation and other files maintained in the Eclipse Foundation source code\n\
+repository ("Repository") in software modules ("Modules") and made available\n\
+as downloadable archives ("Downloads").\n\
+\n\
+\t- Content may be structured and packaged into modules to facilitate delivering,\n\
+\t  extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
+\t  plug-in fragments ("Fragments"), and features ("Features").\n\
+\t- Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
+\t  in a directory named "plugins".\n\
+\t- A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
+\t  Each Feature may be packaged as a sub-directory in a directory named "features".\n\
+\t  Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
+\t  numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
+\t- Features may also include other Features ("Included Features"). Within a Feature, files\n\
+\t  named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
+\n\
+The terms and conditions governing Plug-ins and Fragments should be\n\
+contained in files named "about.html" ("Abouts"). The terms and\n\
+conditions governing Features and Included Features should be contained\n\
+in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
+Licenses may be located in any directory of a Download or Module\n\
+including, but not limited to the following locations:\n\
+\n\
+\t- The top-level (root) directory\n\
+\t- Plug-in and Fragment directories\n\
+\t- Inside Plug-ins and Fragments packaged as JARs\n\
+\t- Sub-directories of the directory named "src" of certain Plug-ins\n\
+\t- Feature directories\n\
+\n\
+Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
+Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
+Update License") during the installation process. If the Feature contains\n\
+Included Features, the Feature Update License should either provide you\n\
+with the terms and conditions governing the Included Features or inform\n\
+you where you can locate them. Feature Update Licenses may be found in\n\
+the "license" property of files named "feature.properties" found within a Feature.\n\
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
+terms and conditions (or references to such terms and conditions) that\n\
+govern your use of the associated Content in that directory.\n\
+\n\
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
+\n\
+\t- Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
+\t- Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
+\t- Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
+\t- Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
+\t- Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
+\n\
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
+is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
+govern that particular Content.\n\
+\n\
+\n\Use of Provisioning Technology\n\
+\n\
+The Eclipse Foundation makes available provisioning software, examples of which include,\n\
+but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
+the purpose of allowing users to install software, documentation, information and/or\n\
+other materials (collectively "Installable Software"). This capability is provided with\n\
+the intent of allowing such users to install, extend and update Eclipse-based products.\n\
+Information about packaging Installable Software is available at\n\
+http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
+\n\
+You may use Provisioning Technology to allow other parties to install Installable Software.\n\
+You shall be responsible for enabling the applicable license agreements relating to the\n\
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
+in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
+making it available in accordance with the Specification, you further acknowledge your\n\
+agreement to, and the acquisition of all necessary rights to permit the following:\n\
+\n\
+\t1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
+\t   the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
+\t   extending or updating the functionality of an Eclipse-based product.\n\
+\t2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
+\t   Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
+\t3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
+\t   govern the use of the Installable Software ("Installable Software Agreement") and such\n\
+\t   Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
+\t   with the Specification. Such Installable Software Agreement must inform the user of the\n\
+\t   terms and conditions that govern the Installable Software and must solicit acceptance by\n\
+\t   the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
+\t   indication of agreement by the user, the provisioning Technology will complete installation\n\
+\t   of the Installable Software.\n\
+\n\
+Cryptography\n\
+\n\
+Content may contain encryption software. The country in which you are\n\
+currently may have restrictions on the import, possession, and use,\n\
+and/or re-export to another country, of encryption software. BEFORE\n\
+using any encryption software, please check the country's laws,\n\
+regulations and policies concerning the import, possession, or use, and\n\
+re-export of encryption software, to see if this is permitted.\n\
+\n\
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
+########### end of license property ##########################################
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/feature.xml b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/feature.xml
new file mode 100755
index 0000000..f699a98
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/feature.xml
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.papyrus.interoperability.dd.feature"
+      label="Diagram Definition (DD)"
+      version="0.7.0.qualifier"
+      provider-name="Eclipse Modeling Project">
+
+   <description url="http://www.example.com/description">
+      
+   </description>
+
+   <copyright url="http://www.eclipse.org/legal/epl-v10.html">
+      Copyright (c) 2016 CEA LIST.
+All rights reserved.   This program and the accompanying materials
+are made available under the terms of the Eclipse Public License
+v1.0 which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+   </copyright>
+
+   <license url="%licenseURL">
+      %license
+   </license>
+
+   <plugin
+         id="org.eclipse.papyrus.dd"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.dd.edit"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.dd.editor"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.dd.qvt"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.notation.export"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.notation.qvt"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.notation2umldi"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.umldi"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.umldi.edit"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.umldi.editor"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.umldi2dg"
+         download-size="0"
+         install-size="0"
+         version="0.7.0.qualifier"
+         unpack="false"/>
+
+</feature>
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/license.html b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/license.html
new file mode 100755
index 0000000..c3d34c3
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/license.html
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+<title>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>April 9, 2014</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+   (COLLECTIVELY &quot;CONTENT&quot;).  USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+   CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+   OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+   NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+   CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
+   (&quot;EPL&quot;).  A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+   For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+   repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
+
+<ul>
+       <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content.  Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
+       <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
+       <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.  Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.  Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
+      and/or Fragments associated with that Feature.</li>
+       <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
+Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;).  Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+       <li>The top-level (root) directory</li>
+       <li>Plug-in and Fragment directories</li>
+       <li>Inside Plug-ins and Fragments packaged as JARs</li>
+       <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
+       <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
+installation process.  If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them.  Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.  SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+       <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+       <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+       <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+       <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+       <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT.  If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+   Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
+   other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
+   install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+       href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+   (&quot;Specification&quot;).</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+   applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+   in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+   Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+       <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
+       on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
+       product.</li>
+       <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+       accessed and copied to the Target Machine.</li>
+       <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+       Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
+       Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+       the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+       indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+   another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+   possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/pom.xml b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/pom.xml
new file mode 100755
index 0000000..cf98bf5
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.feature/pom.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	
+	<parent>
+		<artifactId>org.eclipse.papyrus.interoperability.dd.features</artifactId>
+		<groupId>org.eclipse.papyrus.interoperability</groupId>
+		<version>0.7.0-SNAPSHOT</version>
+    </parent>
+	
+	<artifactId>org.eclipse.papyrus.interoperability.dd.feature</artifactId>
+	<name>Papyrus Interoperability diagram definition Feature</name>
+	<description>diagram definition feature</description>
+	<packaging>eclipse-feature</packaging>
+	
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.eclipse.tycho.extras</groupId>
+				<artifactId>tycho-source-feature-plugin</artifactId>
+				<executions>
+					<execution>
+						<id>source-feature</id>
+						<phase>package</phase>
+						<goals>
+							<goal>source-feature</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+</project>
\ No newline at end of file
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/.project b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/.project
new file mode 100755
index 0000000..499186c
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.interoperability.dd.p2</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.UpdateSiteBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.pde.UpdateSiteNature</nature>
+	</natures>
+</projectDescription>
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/category.xml b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/category.xml
new file mode 100755
index 0000000..e0d44ca
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/category.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+   <feature url="features/org.eclipse.papyrus.interoperability.dd.feature_0.7.0.qualifier.jar" id="org.eclipse.papyrus.interoperability.dd.feature" version="0.7.0.qualifier">     
+      <category name="org.eclipse.papyrus.interoperability.dd"/>
+   </feature>
+   <category-def name="org.eclipse.papyrus.interoperability.dd" label="Diagram Definition">
+      <description>
+         Papyrus Diagram Definition (DD) tool for Interoperability
+      </description>
+   </category-def>
+</site>
diff --git a/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/pom.xml b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/pom.xml
new file mode 100755
index 0000000..5cf76ab
--- /dev/null
+++ b/diagram-definition/features/org.eclipse.papyrus.interoperability.dd.p2/pom.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	
+	<!-- Parent POM (i.e., the one owned by the releng folder) -->
+	<parent>
+		<groupId>org.eclipse.papyrus.interoperability</groupId>
+		<artifactId>org.eclipse.papyrus.interoperability.dd.features</artifactId>
+		<version>0.7.0-SNAPSHOT</version>
+	</parent>
+	
+	<!-- POM description -->
+	<artifactId>org.eclipse.papyrus.interoperability.dd.p2</artifactId>
+	<name>Papyrus Interoperability diagram definition P2</name>
+	<description>diagram definition p2</description>
+	<packaging>eclipse-repository</packaging>
+
+</project>
\ No newline at end of file
diff --git a/diagram-definition/features/pom.xml b/diagram-definition/features/pom.xml
new file mode 100755
index 0000000..373a3cd
--- /dev/null
+++ b/diagram-definition/features/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	
+	<parent>
+		<artifactId>org.eclipse.papyrus.interoperability.dd</artifactId>
+		<groupId>org.eclipse.papyrus.interoperability</groupId>
+		<version>0.7.0-SNAPSHOT</version>
+    </parent>
+	
+	<artifactId>org.eclipse.papyrus.interoperability.dd.features</artifactId>
+	<name>Papyrus Interoperability diagram definition Features and P2</name>
+	<description>The top container of diagram definition features and P2 for Interoperability.</description>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>org.eclipse.papyrus.interoperability.dd.feature</module>
+		<module>org.eclipse.papyrus.interoperability.dd.p2</module>
+	</modules>
+</project>
\ No newline at end of file
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.classpath b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.classpath
new file mode 100755
index 0000000..e4dad7e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.project b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.project
new file mode 100755
index 0000000..9d46f91
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.dd.edit</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.settings/org.eclipse.jdt.core.prefs b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..e576692
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,281 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=0
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=0
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=next_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=next_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=false
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=150
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=1
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=200
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=0
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.settings/org.eclipse.jdt.ui.prefs b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..b5f980c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+formatter_profile=_Zero blank Papyrus Formatter Profile CDM
+formatter_settings_version=12
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/META-INF/MANIFEST.MF b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/META-INF/MANIFEST.MF
new file mode 100755
index 0000000..21fedd4
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,22 @@
+Manifest-Version: 1.0
+Export-Package: org.eclipse.papyrus.dd.dc.provider,
+ org.eclipse.papyrus.dd.dg.provider,
+ org.eclipse.papyrus.dd.provider,
+ org.eclipse.papyrus.dd.di.provider
+Require-Bundle: org.eclipse.core.runtime;bundle-version="3.9.100",
+ org.eclipse.papyrus.dd;bundle-version="0.7.0";visibility:=reexport,
+ org.eclipse.emf.edit;bundle-version="2.9.0";visibility:=reexport,
+ org.eclipse.papyrus.dd.edit;bundle-version="0.7.0";visibility:=reexport,
+ org.eclipse.emf.ecore;bundle-version="2.9.2";visibility:=reexport,
+ org.eclipse.emf.ecore.edit;bundle-version="2.8.0";visibility:=reexport,
+ org.eclipse.uml2.common.edit;bundle-version="1.6.0";visibility:=reexport
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Version: 0.7.0.qualifier
+Bundle-Name: %pluginName
+Bundle-Localization: plugin
+Bundle-ManifestVersion: 2
+Bundle-Activator: org.eclipse.papyrus.dd.provider.DDEditPlugin$Implementation
+Bundle-SymbolicName: org.eclipse.papyrus.dd.edit;singleton:=true
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/about.html b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/about.html
new file mode 100755
index 0000000..3b13982
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>June 08, 2015</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/build.properties b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/build.properties
new file mode 100755
index 0000000..e718d77
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/build.properties
@@ -0,0 +1,18 @@
+# Copyright (c) 2014 CEA LIST.
+#  
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#  
+# Contributors:
+#  CEA LIST - Initial API and implementation
+
+bin.includes = .,\
+               icons/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+jars.compile.order = .
+source.. = src-gen/
+output.. = bin/
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCanvas_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCanvas_bounds_Bounds.gif
new file mode 100755
index 0000000..b68de5e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCanvas_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCircle_center_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCircle_center_Point.gif
new file mode 100755
index 0000000..ed16f99
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCircle_center_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_endControl_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_endControl_Point.gif
new file mode 100755
index 0000000..b913037
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_endControl_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_point_Point.gif
new file mode 100755
index 0000000..b913037
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_startControl_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_startControl_Point.gif
new file mode 100755
index 0000000..b913037
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateCubicCurveTo_startControl_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Canvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Canvas.gif
new file mode 100755
index 0000000..0f1a66a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Canvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Circle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Circle.gif
new file mode 100755
index 0000000..d9a8b0c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Circle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_ClipPath.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_ClipPath.gif
new file mode 100755
index 0000000..2f72c3a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_ClipPath.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Ellipse.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Ellipse.gif
new file mode 100755
index 0000000..df2b32d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Ellipse.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Group.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Group.gif
new file mode 100755
index 0000000..bfcb3a1
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Group.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Image.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Image.gif
new file mode 100755
index 0000000..0ec5420
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Image.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Line.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Line.gif
new file mode 100755
index 0000000..0131b56
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Line.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_LinearGradient.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_LinearGradient.gif
new file mode 100755
index 0000000..c128024
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_LinearGradient.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Marker.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Marker.gif
new file mode 100755
index 0000000..6b00e67
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Marker.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Path.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Path.gif
new file mode 100755
index 0000000..e03542c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Path.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Pattern.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Pattern.gif
new file mode 100755
index 0000000..258ef98
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Pattern.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Polygon.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Polygon.gif
new file mode 100755
index 0000000..51bab8f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Polygon.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Polyline.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Polyline.gif
new file mode 100755
index 0000000..dfb9f6a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Polyline.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_RadialGradient.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_RadialGradient.gif
new file mode 100755
index 0000000..0fae0b1
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_RadialGradient.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Rectangle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Rectangle.gif
new file mode 100755
index 0000000..c525027
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Rectangle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_RootCanvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_RootCanvas.gif
new file mode 100755
index 0000000..a75fd20
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_RootCanvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Text.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Text.gif
new file mode 100755
index 0000000..dad7592
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Text.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Use.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Use.gif
new file mode 100755
index 0000000..258ef98
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_definition_Use.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_styleSheet_StyleSheet.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_styleSheet_StyleSheet.gif
new file mode 100755
index 0000000..9466445
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDefinitions_styleSheet_StyleSheet.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_localStyle_Style.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_localStyle_Style.gif
new file mode 100755
index 0000000..9ee8d4c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_localStyle_Style.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Diagram.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Diagram.gif
new file mode 100755
index 0000000..57826cc
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Diagram.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Edge.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Edge.gif
new file mode 100755
index 0000000..180d9c7
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Edge.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Shape.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Shape.gif
new file mode 100755
index 0000000..6b2a568
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateDiagramElement_ownedElement_Shape.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEdge_waypoint_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEdge_waypoint_Point.gif
new file mode 100755
index 0000000..d4a978d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEdge_waypoint_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipse_center_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipse_center_Point.gif
new file mode 100755
index 0000000..3a4e9ad
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipse_center_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipse_radii_Dimension.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipse_radii_Dimension.gif
new file mode 100755
index 0000000..4d10d57
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipse_radii_Dimension.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipticalArcTo_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipticalArcTo_point_Point.gif
new file mode 100755
index 0000000..52cb135
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipticalArcTo_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipticalArcTo_radii_Dimension.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipticalArcTo_radii_Dimension.gif
new file mode 100755
index 0000000..01f8ed6
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateEllipticalArcTo_radii_Dimension.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGradient_stop_GradientStop.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGradient_stop_GradientStop.gif
new file mode 100755
index 0000000..a60b329
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGradient_stop_GradientStop.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_style_Style.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_style_Style.gif
new file mode 100755
index 0000000..e9c1a08
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_style_Style.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Matrix.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Matrix.gif
new file mode 100755
index 0000000..26f8481
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Matrix.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Rotate.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Rotate.gif
new file mode 100755
index 0000000..f296b31
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Rotate.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Scale.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Scale.gif
new file mode 100755
index 0000000..40e5eed
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Scale.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Skew.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Skew.gif
new file mode 100755
index 0000000..9ff095f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Skew.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Translate.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Translate.gif
new file mode 100755
index 0000000..2a8a6d1
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGraphicalElement_transform_Translate.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Canvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Canvas.gif
new file mode 100755
index 0000000..8d1ccfa
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Canvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Circle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Circle.gif
new file mode 100755
index 0000000..a2ea8fe
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Circle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_ClipPath.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_ClipPath.gif
new file mode 100755
index 0000000..df29197
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_ClipPath.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Ellipse.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Ellipse.gif
new file mode 100755
index 0000000..8b41d35
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Ellipse.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Group.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Group.gif
new file mode 100755
index 0000000..3744cee
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Group.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Image.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Image.gif
new file mode 100755
index 0000000..0ef5eff
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Image.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Line.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Line.gif
new file mode 100755
index 0000000..ebd9b3e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Line.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Marker.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Marker.gif
new file mode 100755
index 0000000..4d51bba
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Marker.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Path.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Path.gif
new file mode 100755
index 0000000..66cbc4c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Path.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Polygon.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Polygon.gif
new file mode 100755
index 0000000..8526cb6
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Polygon.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Polyline.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Polyline.gif
new file mode 100755
index 0000000..691dd11
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Polyline.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Rectangle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Rectangle.gif
new file mode 100755
index 0000000..053b434
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Rectangle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_RootCanvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_RootCanvas.gif
new file mode 100755
index 0000000..f4369fd
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_RootCanvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Text.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Text.gif
new file mode 100755
index 0000000..ddf43a1
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Text.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Use.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Use.gif
new file mode 100755
index 0000000..3e8f733
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateGroup_member_Use.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateImage_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateImage_bounds_Bounds.gif
new file mode 100755
index 0000000..7402e22
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateImage_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLineTo_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLineTo_point_Point.gif
new file mode 100755
index 0000000..5ab63a0
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLineTo_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLine_end_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLine_end_Point.gif
new file mode 100755
index 0000000..5e822cd
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLine_end_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLine_start_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLine_start_Point.gif
new file mode 100755
index 0000000..5e822cd
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLine_start_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLinearGradient_end_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLinearGradient_end_Point.gif
new file mode 100755
index 0000000..01d709d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLinearGradient_end_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLinearGradient_start_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLinearGradient_start_Point.gif
new file mode 100755
index 0000000..01d709d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateLinearGradient_start_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMarker_reference_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMarker_reference_Point.gif
new file mode 100755
index 0000000..2b77e50
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMarker_reference_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMarker_size_Dimension.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMarker_size_Dimension.gif
new file mode 100755
index 0000000..1edc5b9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMarker_size_Dimension.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMoveTo_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMoveTo_point_Point.gif
new file mode 100755
index 0000000..52cb135
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateMoveTo_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Matrix.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Matrix.gif
new file mode 100755
index 0000000..ce60088
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Matrix.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Rotate.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Rotate.gif
new file mode 100755
index 0000000..84084d8
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Rotate.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Scale.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Scale.gif
new file mode 100755
index 0000000..a6265c4
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Scale.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Skew.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Skew.gif
new file mode 100755
index 0000000..96f2df5
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Skew.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Translate.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Translate.gif
new file mode 100755
index 0000000..bb1ce3a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePaintServer_transform_Translate.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_ClosePath.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_ClosePath.gif
new file mode 100755
index 0000000..9a34a69
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_ClosePath.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_CubicCurveTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_CubicCurveTo.gif
new file mode 100755
index 0000000..1630113
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_CubicCurveTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_EllipticalArcTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_EllipticalArcTo.gif
new file mode 100755
index 0000000..ce3b99f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_EllipticalArcTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_LineTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_LineTo.gif
new file mode 100755
index 0000000..dd7d81f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_LineTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_MoveTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_MoveTo.gif
new file mode 100755
index 0000000..ce3b99f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_MoveTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_QuadraticCurveTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_QuadraticCurveTo.gif
new file mode 100755
index 0000000..c41c6fc
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePath_command_QuadraticCurveTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_bounds_Bounds.gif
new file mode 100755
index 0000000..90bc42c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Canvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Canvas.gif
new file mode 100755
index 0000000..b1d6682
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Canvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Circle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Circle.gif
new file mode 100755
index 0000000..82bf8d2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Circle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_ClipPath.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_ClipPath.gif
new file mode 100755
index 0000000..014b83a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_ClipPath.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Ellipse.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Ellipse.gif
new file mode 100755
index 0000000..60aa17e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Ellipse.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Group.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Group.gif
new file mode 100755
index 0000000..7d4d39f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Group.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Image.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Image.gif
new file mode 100755
index 0000000..cc38dd7
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Image.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Line.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Line.gif
new file mode 100755
index 0000000..e863d31
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Line.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Marker.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Marker.gif
new file mode 100755
index 0000000..d01836d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Marker.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Path.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Path.gif
new file mode 100755
index 0000000..72cfbd0
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Path.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Polygon.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Polygon.gif
new file mode 100755
index 0000000..9c351cc
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Polygon.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Polyline.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Polyline.gif
new file mode 100755
index 0000000..61e16c0
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Polyline.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Rectangle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Rectangle.gif
new file mode 100755
index 0000000..d04c431
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Rectangle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_RootCanvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_RootCanvas.gif
new file mode 100755
index 0000000..83969f9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_RootCanvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Text.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Text.gif
new file mode 100755
index 0000000..ebeaeeb
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Text.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Use.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Use.gif
new file mode 100755
index 0000000..ced536d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePattern_tile_Use.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePolygon_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePolygon_point_Point.gif
new file mode 100755
index 0000000..96b347e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePolygon_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePolyline_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePolyline_point_Point.gif
new file mode 100755
index 0000000..43703db
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreatePolyline_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateQuadraticCurveTo_control_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateQuadraticCurveTo_control_Point.gif
new file mode 100755
index 0000000..dd1ad84
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateQuadraticCurveTo_control_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateQuadraticCurveTo_point_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateQuadraticCurveTo_point_Point.gif
new file mode 100755
index 0000000..dd1ad84
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateQuadraticCurveTo_point_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRadialGradient_center_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRadialGradient_center_Point.gif
new file mode 100755
index 0000000..ffa729c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRadialGradient_center_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRadialGradient_focus_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRadialGradient_focus_Point.gif
new file mode 100755
index 0000000..ffa729c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRadialGradient_focus_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRectangle_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRectangle_bounds_Bounds.gif
new file mode 100755
index 0000000..11943a3
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRectangle_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRootCanvas_definitions_Definitions.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRootCanvas_definitions_Definitions.gif
new file mode 100755
index 0000000..6ed90b4
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRootCanvas_definitions_Definitions.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRotate_center_Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRotate_center_Point.gif
new file mode 100755
index 0000000..04db54f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateRotate_center_Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateShape_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateShape_bounds_Bounds.gif
new file mode 100755
index 0000000..af3a295
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateShape_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleRule_selector_StyleSelector.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleRule_selector_StyleSelector.gif
new file mode 100755
index 0000000..c436b8e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleRule_selector_StyleSelector.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleRule_style_Style.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleRule_style_Style.gif
new file mode 100755
index 0000000..b1d08d2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleRule_style_Style.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleSheet_rule_StyleRule.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleSheet_rule_StyleRule.gif
new file mode 100755
index 0000000..3d5488e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyleSheet_rule_StyleRule.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyle_fill_Paint.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyle_fill_Paint.gif
new file mode 100755
index 0000000..9466445
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyle_fill_Paint.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyle_stroke_Paint.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyle_stroke_Paint.gif
new file mode 100755
index 0000000..9466445
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateStyle_stroke_Paint.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateText_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateText_bounds_Bounds.gif
new file mode 100755
index 0000000..63feef5
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateText_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateUse_bounds_Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateUse_bounds_Bounds.gif
new file mode 100755
index 0000000..90bc42c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/ctool16/CreateUse_bounds_Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Bounds.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Bounds.gif
new file mode 100755
index 0000000..9250fec
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Bounds.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Canvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Canvas.gif
new file mode 100755
index 0000000..b1f8afa
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Canvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Circle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Circle.gif
new file mode 100755
index 0000000..cdd3b76
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Circle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/ClipPath.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/ClipPath.gif
new file mode 100755
index 0000000..10d2229
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/ClipPath.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/ClosePath.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/ClosePath.gif
new file mode 100755
index 0000000..83afb9b
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/ClosePath.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/CubicCurveTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/CubicCurveTo.gif
new file mode 100755
index 0000000..5915591
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/CubicCurveTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Definitions.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Definitions.gif
new file mode 100755
index 0000000..136e3b2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Definitions.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Dimension.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Dimension.gif
new file mode 100755
index 0000000..cdd3b76
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Dimension.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Ellipse.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Ellipse.gif
new file mode 100755
index 0000000..106881e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Ellipse.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/EllipticalArcTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/EllipticalArcTo.gif
new file mode 100755
index 0000000..45731fe
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/EllipticalArcTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/GradientStop.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/GradientStop.gif
new file mode 100755
index 0000000..30f0c48
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/GradientStop.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Group.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Group.gif
new file mode 100755
index 0000000..90d10f9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Group.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Image.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Image.gif
new file mode 100755
index 0000000..ef56c14
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Image.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Line.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Line.gif
new file mode 100755
index 0000000..e4bc22d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Line.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/LineTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/LineTo.gif
new file mode 100755
index 0000000..badaab0
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/LineTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/LinearGradient.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/LinearGradient.gif
new file mode 100755
index 0000000..4365960
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/LinearGradient.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Marker.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Marker.gif
new file mode 100755
index 0000000..9041598
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Marker.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Matrix.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Matrix.gif
new file mode 100755
index 0000000..afb82ea
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Matrix.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/MoveTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/MoveTo.gif
new file mode 100755
index 0000000..45731fe
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/MoveTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Paint.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Paint.gif
new file mode 100755
index 0000000..48e3cf2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Paint.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Path.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Path.gif
new file mode 100755
index 0000000..caf2804
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Path.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Pattern.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Pattern.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Pattern.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Point.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Point.gif
new file mode 100755
index 0000000..53500da
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Point.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Polygon.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Polygon.gif
new file mode 100755
index 0000000..33a997a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Polygon.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Polyline.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Polyline.gif
new file mode 100755
index 0000000..7c2aaac
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Polyline.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/QuadraticCurveTo.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/QuadraticCurveTo.gif
new file mode 100755
index 0000000..2124f3e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/QuadraticCurveTo.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/RadialGradient.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/RadialGradient.gif
new file mode 100755
index 0000000..35ef84e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/RadialGradient.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Rectangle.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Rectangle.gif
new file mode 100755
index 0000000..8a5c70c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Rectangle.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/RootCanvas.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/RootCanvas.gif
new file mode 100755
index 0000000..c00aedf
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/RootCanvas.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Rotate.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Rotate.gif
new file mode 100755
index 0000000..b3643da
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Rotate.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Scale.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Scale.gif
new file mode 100755
index 0000000..c3370c7
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Scale.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Skew.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Skew.gif
new file mode 100755
index 0000000..a17dc7d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Skew.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Style.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Style.gif
new file mode 100755
index 0000000..136e3b2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Style.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleRule.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleRule.gif
new file mode 100755
index 0000000..7c2aaac
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleRule.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleSelector.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleSelector.gif
new file mode 100755
index 0000000..a3908bc
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleSelector.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleSheet.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleSheet.gif
new file mode 100755
index 0000000..48e3cf2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/StyleSheet.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Text.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Text.gif
new file mode 100755
index 0000000..e4b530e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Text.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Translate.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Translate.gif
new file mode 100755
index 0000000..45731fe
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Translate.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Use.gif b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Use.gif
new file mode 100755
index 0000000..14af8aa
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/icons/full/obj16/Use.gif
Binary files differ
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/plugin.properties b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/plugin.properties
new file mode 100755
index 0000000..cd6beb6
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/plugin.properties
@@ -0,0 +1,277 @@
+# Copyright (c) 2014 CEA LIST.
+#  
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#  
+# Contributors:
+#  CEA LIST - Initial API and implementation
+
+pluginName = DD Edit Support
+providerName = Eclipse Modeling Project
+
+_UI_CreateChild_text = {1} | {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_Point_type = Point
+_UI_Dimension_type = Dimension
+_UI_Bounds_type = Bounds
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_Point_x_feature = X
+_UI_Point_y_feature = Y
+_UI_Dimension_width_feature = Width
+_UI_Dimension_height_feature = Height
+_UI_Bounds_x_feature = X
+_UI_Bounds_y_feature = Y
+_UI_Bounds_width_feature = Width
+_UI_Bounds_height_feature = Height
+_UI_Unknown_feature = Unspecified
+
+_UI_KnownColor_maroon_literal = #800000
+_UI_KnownColor_red_literal = #FF0000
+_UI_KnownColor_orange_literal = #FFA500
+_UI_KnownColor_yellow_literal = #FFFF00
+_UI_KnownColor_olive_literal = #808000
+_UI_KnownColor_purple_literal = #800080
+_UI_KnownColor_fuchsia_literal = #FF00FF
+_UI_KnownColor_white_literal = #FFFFFF
+_UI_KnownColor_lime_literal = #00FF00
+_UI_KnownColor_green_literal = #008000
+_UI_KnownColor_navy_literal = #000080
+_UI_KnownColor_blue_literal = #0000FF
+_UI_KnownColor_aqua_literal = #00FFFF
+_UI_KnownColor_teal_literal = #008080
+_UI_KnownColor_black_literal = #000000
+_UI_KnownColor_silver_literal = #C0C0C0
+_UI_KnownColor_gray_literal = #808080
+_UI_AlignmentKind_start_literal = start
+_UI_AlignmentKind_end_literal = end
+_UI_AlignmentKind_center_literal = center
+_UI_Canvas_type = Canvas
+_UI_Group_type = Group
+_UI_GraphicalElement_type = Graphical Element
+_UI_ClipPath_type = Clip Path
+_UI_Style_type = Style
+_UI_Paint_type = Paint
+_UI_PaintServer_type = Paint Server
+_UI_Transform_type = Transform
+_UI_Definitions_type = Definitions
+_UI_CubicCurveTo_type = Cubic Curve To
+_UI_PathCommand_type = Path Command
+_UI_Marker_type = Marker
+_UI_StyleSheet_type = Style Sheet
+_UI_StyleRule_type = Style Rule
+_UI_StyleSelector_type = Style Selector
+_UI_Circle_type = Circle
+_UI_ClosePath_type = Close Path
+_UI_Ellipse_type = Ellipse
+_UI_EllipticalArcTo_type = Elliptical Arc To
+_UI_QuadraticCurveTo_type = Quadratic Curve To
+_UI_Gradient_type = Gradient
+_UI_GradientStop_type = Gradient Stop
+_UI_Image_type = Image
+_UI_Line_type = Line
+_UI_MarkedElement_type = Marked Element
+_UI_LinearGradient_type = Linear Gradient
+_UI_LineTo_type = Line To
+_UI_Matrix_type = Matrix
+_UI_MoveTo_type = Move To
+_UI_Path_type = Path
+_UI_Pattern_type = Pattern
+_UI_Polygon_type = Polygon
+_UI_Polyline_type = Polyline
+_UI_RadialGradient_type = Radial Gradient
+_UI_Rectangle_type = Rectangle
+_UI_Rotate_type = Rotate
+_UI_Scale_type = Scale
+_UI_Skew_type = Skew
+_UI_Text_type = Text
+_UI_Translate_type = Translate
+_UI_Canvas_background_feature = Background
+_UI_Canvas_definitions_feature = Definitions
+_UI_Canvas_styleSheet_feature = Style Sheet
+_UI_Group_member_feature = Member
+_UI_GraphicalElement_clipPath_feature = Clip Path
+_UI_GraphicalElement_group_feature = Group
+_UI_GraphicalElement_keyword_feature = Keyword
+_UI_GraphicalElement_style_feature = Style
+_UI_GraphicalElement_transform_feature = Transform
+_UI_Style_fill_feature = Fill
+_UI_Style_fillOpacity_feature = Fill Opacity
+_UI_Style_stroke_feature = Stroke
+_UI_Style_strokeWidth_feature = Stroke Width
+_UI_Style_strokeOpacity_feature = Stroke Opacity
+_UI_Style_strokeDashLength_feature = Stroke Dash Length
+_UI_Style_fontSize_feature = Font Size
+_UI_Style_fontName_feature = Font Name
+_UI_Style_fontItalic_feature = Font Italic
+_UI_Style_fontBold_feature = Font Bold
+_UI_Style_fontDecoration_feature = Font Decoration
+_UI_Paint_color_feature = Color
+_UI_Paint_paintServer_feature = Paint Server
+_UI_PaintServer_transform_feature = Transform
+_UI_Definitions_clipPath_feature = Clip Path
+_UI_Definitions_marker_feature = Marker
+_UI_Definitions_paintServer_feature = Paint Server
+_UI_Definitions_styleSheet_feature = Style Sheet
+_UI_CubicCurveTo_point_feature = Point
+_UI_CubicCurveTo_startControl_feature = Start Control
+_UI_CubicCurveTo_endControl_feature = End Control
+_UI_PathCommand_isRelative_feature = Is Relative
+_UI_Marker_size_feature = Size
+_UI_Marker_reference_feature = Reference
+_UI_StyleSheet_rule_feature = Rule
+_UI_StyleRule_selector_feature = Selector
+_UI_StyleRule_style_feature = Style
+_UI_StyleSelector_type_feature = Type
+_UI_StyleSelector_keyword_feature = Keyword
+_UI_Circle_center_feature = Center
+_UI_Circle_radius_feature = Radius
+_UI_Ellipse_center_feature = Center
+_UI_Ellipse_radii_feature = Radii
+_UI_EllipticalArcTo_point_feature = Point
+_UI_EllipticalArcTo_radii_feature = Radii
+_UI_EllipticalArcTo_rotation_feature = Rotation
+_UI_EllipticalArcTo_isLargeArc_feature = Is Large Arc
+_UI_EllipticalArcTo_isSweep_feature = Is Sweep
+_UI_QuadraticCurveTo_point_feature = Point
+_UI_QuadraticCurveTo_control_feature = Control
+_UI_Gradient_stop_feature = Stop
+_UI_GradientStop_color_feature = Color
+_UI_GradientStop_offset_feature = Offset
+_UI_GradientStop_opacity_feature = Opacity
+_UI_Image_source_feature = Source
+_UI_Image_bounds_feature = Bounds
+_UI_Image_isAspectRatioPreserved_feature = Is Aspect Ratio Preserved
+_UI_Line_start_feature = Start
+_UI_Line_end_feature = End
+_UI_MarkedElement_endMarker_feature = End Marker
+_UI_MarkedElement_midMarker_feature = Mid Marker
+_UI_MarkedElement_startMarker_feature = Start Marker
+_UI_LinearGradient_x1_feature = X1
+_UI_LinearGradient_x2_feature = X2
+_UI_LinearGradient_y1_feature = Y1
+_UI_LinearGradient_y2_feature = Y2
+_UI_LineTo_point_feature = Point
+_UI_Matrix_a_feature = A
+_UI_Matrix_b_feature = B
+_UI_Matrix_c_feature = C
+_UI_Matrix_d_feature = D
+_UI_Matrix_e_feature = E
+_UI_Matrix_f_feature = F
+_UI_MoveTo_point_feature = Point
+_UI_Path_command_feature = Command
+_UI_Pattern_bounds_feature = Bounds
+_UI_Pattern_tile_feature = Tile
+_UI_Polygon_point_feature = Point
+_UI_Polyline_point_feature = Point
+_UI_RadialGradient_centerX_feature = Center X
+_UI_RadialGradient_centerY_feature = Center Y
+_UI_RadialGradient_radius_feature = Radius
+_UI_RadialGradient_focusX_feature = Focus X
+_UI_RadialGradient_focusY_feature = Focus Y
+_UI_Rectangle_bounds_feature = Bounds
+_UI_Rectangle_cornerRadius_feature = Corner Radius
+_UI_Rotate_angle_feature = Angle
+_UI_Rotate_center_feature = Center
+_UI_Scale_factorX_feature = Factor X
+_UI_Scale_factorY_feature = Factor Y
+_UI_Skew_angleX_feature = Angle X
+_UI_Skew_angleY_feature = Angle Y
+_UI_Text_data_feature = Data
+_UI_Text_position_feature = Position
+_UI_Translate_deltaX_feature = Delta X
+_UI_Translate_deltaY_feature = Delta Y
+_UI_FontDecoration_underline_literal = underline
+_UI_FontDecoration_overline_literal = overline
+_UI_FontDecoration_strikeThrough_literal = strikeThrough
+_UI_DiagramElement_type = Diagram Element
+_UI_Edge_type = Edge
+_UI_Diagram_type = Diagram
+_UI_Shape_type = Shape
+_UI_DiagramElement_modelElement_feature = Model Element
+_UI_DiagramElement_owningElement_feature = Owning Element
+_UI_DiagramElement_ownedElement_feature = Owned Element
+_UI_DiagramElement_localStyle_feature = Local Style
+_UI_DiagramElement_sharedStyle_feature = Shared Style
+_UI_Edge_source_feature = Source
+_UI_Edge_target_feature = Target
+_UI_Edge_waypoint_feature = Waypoint
+_UI_Diagram_name_feature = Name
+_UI_Diagram_documentation_feature = Documentation
+_UI_Diagram_resolution_feature = Resolution
+_UI_Shape_bounds_feature = Bounds
+_UI_NamedDefinition_type = Named Definition
+_UI_NamedDefinition_name_feature = Name
+_UI_FontDecoration_lineThrough_literal = lineThrough
+_UI_GraphicalElement_keywords_feature = Keywords
+_UI_Canvas_bounds_feature = Bounds
+_UI_Use_type = Use
+_UI_Definitions_element_feature = Element
+_UI_Use_bounds_feature = Bounds
+_UI_RootCanvas_type = Root Canvas
+_UI_RootCanvas_background_feature = Background
+_UI_RootCanvas_definitions_feature = Definitions
+_UI_RootCanvas_styleSheet_feature = Style Sheet
+_UI_RootCanvas_backgroundColor_feature = Background Color
+_UI_Definition_type = Definition
+_UI_Definition_id_feature = Id
+_UI_Definitions_defnition_feature = Defnition
+_UI_EllipticalCurveTo_type = Elliptical Curve To
+_UI_EllipticalCurveTo_point_feature = Point
+_UI_EllipticalCurveTo_radii_feature = Radii
+_UI_EllipticalCurveTo_rotation_feature = Rotation
+_UI_EllipticalCurveTo_isLargeArc_feature = Is Large Arc
+_UI_EllipticalCurveTo_isSweep_feature = Is Sweep
+_UI_Gradient_start_feature = Start
+_UI_Gradient_end_feature = End
+_UI_LinearGradient_start_feature = Start
+_UI_LinearGradient_end_feature = End
+_UI_RadialGradient_center_feature = Center
+_UI_RadialGradient_focus_feature = Focus
+_UI_Use_reference_feature = Reference
+_UI_GraphicalElement_class_feature = Class
+_UI_StyleSelector_class_feature = Class
+_UI_Use_referencedElement_feature = Referenced Element
+_UI_StyleSelector_kind_feature = Kind
+_UI_ElementKind_canvas_literal = canvas
+_UI_ElementKind_circle_literal = circle
+_UI_ElementKind_clipPath_literal = clipPath
+_UI_ElementKind_ellipse_literal = ellipse
+_UI_ElementKind_group_literal = group
+_UI_ElementKind_image_literal = image
+_UI_ElementKind_line_literal = line
+_UI_ElementKind_marker_literal = marker
+_UI_ElementKind_path_literal = path
+_UI_ElementKind_polygon_literal = polygon
+_UI_ElementKind_polyline_literal = polyline
+_UI_ElementKind_rectangle_literal = rectangle
+_UI_ElementKind_text_literal = text
+_UI_ElementKind_use_literal = use
+_UI_RootCanvas_externalStyleSheet_feature = External Style Sheet
+_UI_DiagramElement_targetEdge_feature = Target Edge
+_UI_DiagramElement_sourceEdge_feature = Source Edge
+_UI_DiagramElement_owningDiagramElement_feature = Owning Diagram Element
+_UI_DiagramElement_ownedDiagramElement_feature = Owned Diagram Element
+_UI_Edge_sourceDiagramElement_feature = Source Diagram Element
+_UI_Edge_targetDiagramElement_feature = Target Diagram Element
+_UI_Group_layout_feature = Layout
+_UI_GraphicalElement_layoutData_feature = Layout Data
+_UI_RootCanvas_script_feature = Script
+_UI_Text_anchor_feature = Anchor
+_UI_TextAnchor_start_literal = start
+_UI_TextAnchor_middle_literal = middle
+_UI_TextAnchor_end_literal = end
+_UI_Text_bounds_feature = Bounds
+_UI_Definitions_definition_feature = Definition
+_UI_DiagramElement_diagram_feature = Diagram
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/plugin.xml b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/plugin.xml
new file mode 100755
index 0000000..872a039
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/plugin.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2014 CEA LIST.
+  
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+  
+ Contributors:
+  CEA LIST - Initial API and implementation
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated DC -->
+      <factory
+            uri="http://www.omg.org/spec/DD/20110901/DC"
+            class="org.eclipse.papyrus.dd.dc.provider.DCItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated DG -->
+      <factory
+            uri="http://www.omg.org/spec/DD/20110901/DG"
+            class="org.eclipse.papyrus.dd.dg.provider.DGItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource
+               org.eclipse.emf.edit.provider.IItemColorProvider
+               org.eclipse.emf.edit.provider.IItemFontProvider"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated DI -->
+      <factory
+            uri="http://www.omg.org/spec/DD/20110901/DI"
+            class="org.eclipse.papyrus.dd.di.provider.DIItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource
+               org.eclipse.emf.edit.provider.IItemColorProvider
+               org.eclipse.emf.edit.provider.IItemFontProvider"/>
+   </extension>
+
+</plugin>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/pom.xml b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/pom.xml
new file mode 100755
index 0000000..1f7f7b7
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	
+	<parent>
+		<artifactId>org.eclipse.papyrus.interoperability.dd.plugins</artifactId>
+		<groupId>org.eclipse.papyrus.interoperability</groupId>
+		<version>0.7.0-SNAPSHOT</version>
+	</parent>
+	
+	<artifactId>org.eclipse.papyrus.dd.edit</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+</project>
\ No newline at end of file
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/BoundsItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/BoundsItemProvider.java
new file mode 100755
index 0000000..001024d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/BoundsItemProvider.java
@@ -0,0 +1,179 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dc.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.Bounds;
+import org.eclipse.papyrus.dd.dc.DCPackage;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dc.Bounds} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class BoundsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public BoundsItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addXPropertyDescriptor(object);
+			addYPropertyDescriptor(object);
+			addWidthPropertyDescriptor(object);
+			addHeightPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the X feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addXPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Bounds_x_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Bounds_x_feature", "_UI_Bounds_type"), DCPackage.Literals.BOUNDS__X, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Y feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addYPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Bounds_y_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Bounds_y_feature", "_UI_Bounds_type"), DCPackage.Literals.BOUNDS__Y, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Width feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Bounds_width_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Bounds_width_feature", "_UI_Bounds_type"), DCPackage.Literals.BOUNDS__WIDTH, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Height feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addHeightPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Bounds_height_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Bounds_height_feature", "_UI_Bounds_type"), DCPackage.Literals.BOUNDS__HEIGHT, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Bounds.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Bounds"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		Bounds bounds = (Bounds)object;
+		return getString("_UI_Bounds_type") + " " + bounds.getX() + ", " + bounds.getY() + ", " + bounds.getWidth() + ", " + bounds.getHeight();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Bounds.class)) {
+		case DCPackage.BOUNDS__X:
+		case DCPackage.BOUNDS__Y:
+		case DCPackage.BOUNDS__WIDTH:
+		case DCPackage.BOUNDS__HEIGHT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/DCItemProviderAdapterFactory.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/DCItemProviderAdapterFactory.java
new file mode 100755
index 0000000..dc9f6b5
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/DCItemProviderAdapterFactory.java
@@ -0,0 +1,258 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dc.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.dd.dc.util.DCAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class DCItemProviderAdapterFactory extends DCAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public DCItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dc.Point} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PointItemProvider pointItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dc.Point}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createPointAdapter() {
+		if(pointItemProvider == null) {
+			pointItemProvider = new PointItemProvider(this);
+		}
+		return pointItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dc.Dimension} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected DimensionItemProvider dimensionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dc.Dimension}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createDimensionAdapter() {
+		if(dimensionItemProvider == null) {
+			dimensionItemProvider = new DimensionItemProvider(this);
+		}
+		return dimensionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dc.Bounds} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected BoundsItemProvider boundsItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dc.Bounds}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createBoundsAdapter() {
+		if(boundsItemProvider == null) {
+			boundsItemProvider = new BoundsItemProvider(this);
+		}
+		return boundsItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if(isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if(!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+		if(parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void dispose() {
+		if(pointItemProvider != null)
+			pointItemProvider.dispose();
+		if(dimensionItemProvider != null)
+			dimensionItemProvider.dispose();
+		if(boundsItemProvider != null)
+			boundsItemProvider.dispose();
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/DimensionItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/DimensionItemProvider.java
new file mode 100755
index 0000000..a1c1ca9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/DimensionItemProvider.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dc.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCPackage;
+import org.eclipse.papyrus.dd.dc.Dimension;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dc.Dimension} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class DimensionItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public DimensionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addWidthPropertyDescriptor(object);
+			addHeightPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Width feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Dimension_width_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Dimension_width_feature", "_UI_Dimension_type"), DCPackage.Literals.DIMENSION__WIDTH, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Height feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addHeightPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Dimension_height_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Dimension_height_feature", "_UI_Dimension_type"), DCPackage.Literals.DIMENSION__HEIGHT, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Dimension.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Dimension"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		Dimension dimension = (Dimension)object;
+		return getString("_UI_Dimension_type") + " " + dimension.getWidth() + ", " + dimension.getHeight();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Dimension.class)) {
+		case DCPackage.DIMENSION__WIDTH:
+		case DCPackage.DIMENSION__HEIGHT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/PointItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/PointItemProvider.java
new file mode 100755
index 0000000..be33c05
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dc/provider/PointItemProvider.java
@@ -0,0 +1,155 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dc.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCPackage;
+import org.eclipse.papyrus.dd.dc.Point;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dc.Point} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class PointItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PointItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addXPropertyDescriptor(object);
+			addYPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the X feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addXPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Point_x_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Point_x_feature", "_UI_Point_type"), DCPackage.Literals.POINT__X, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Y feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addYPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Point_y_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Point_y_feature", "_UI_Point_type"), DCPackage.Literals.POINT__Y, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Point.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Point"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		Point point = (Point)object;
+		return getString("_UI_Point_type") + " " + point.getX() + ", " + point.getY();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Point.class)) {
+		case DCPackage.POINT__X:
+		case DCPackage.POINT__Y:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CanvasItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CanvasItemProvider.java
new file mode 100755
index 0000000..6a9763e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CanvasItemProvider.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.Canvas;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Canvas} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class CanvasItemProvider extends GroupItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CanvasItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.CANVAS__BOUNDS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Canvas.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Canvas"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Canvas)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Canvas_type") : getString("_UI_Canvas_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Canvas.class)) {
+		case DGPackage.CANVAS__BOUNDS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.CANVAS__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CircleItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CircleItemProvider.java
new file mode 100755
index 0000000..a52a1a8
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CircleItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.Circle;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Circle} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class CircleItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CircleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addRadiusPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Radius feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addRadiusPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Circle_radius_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Circle_radius_feature", "_UI_Circle_type"), DGPackage.Literals.CIRCLE__RADIUS, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.CIRCLE__CENTER);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Circle.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Circle"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Circle)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Circle_type") : getString("_UI_Circle_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Circle.class)) {
+		case DGPackage.CIRCLE__RADIUS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.CIRCLE__CENTER:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.CIRCLE__CENTER, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ClipPathItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ClipPathItemProvider.java
new file mode 100755
index 0000000..e65f022
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ClipPathItemProvider.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.papyrus.dd.dg.ClipPath;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.ClipPath} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class ClipPathItemProvider extends GroupItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ClipPathItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ClipPath.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ClipPath"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ClipPath)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_ClipPath_type") : getString("_UI_ClipPath_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ClosePathItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ClosePathItemProvider.java
new file mode 100755
index 0000000..5406174
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ClosePathItemProvider.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.papyrus.dd.dg.ClosePath;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.ClosePath} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class ClosePathItemProvider extends PathCommandItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ClosePathItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ClosePath.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ClosePath"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		ClosePath closePath = (ClosePath)object;
+		return getString("_UI_ClosePath_type") + " " + closePath.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CubicCurveToItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CubicCurveToItemProvider.java
new file mode 100755
index 0000000..d049b6f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/CubicCurveToItemProvider.java
@@ -0,0 +1,165 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.CubicCurveTo;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.CubicCurveTo} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class CubicCurveToItemProvider extends PathCommandItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public CubicCurveToItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.CUBIC_CURVE_TO__START_CONTROL);
+			childrenFeatures.add(DGPackage.Literals.CUBIC_CURVE_TO__END_CONTROL);
+			childrenFeatures.add(DGPackage.Literals.CUBIC_CURVE_TO__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns CubicCurveTo.gif. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/CubicCurveTo"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		CubicCurveTo cubicCurveTo = (CubicCurveTo)object;
+		return getString("_UI_CubicCurveTo_type") + " " + cubicCurveTo.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(CubicCurveTo.class)) {
+		case DGPackage.CUBIC_CURVE_TO__START_CONTROL:
+		case DGPackage.CUBIC_CURVE_TO__END_CONTROL:
+		case DGPackage.CUBIC_CURVE_TO__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.CUBIC_CURVE_TO__START_CONTROL, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.CUBIC_CURVE_TO__END_CONTROL, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.CUBIC_CURVE_TO__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+		boolean qualify = childFeature == DGPackage.Literals.CUBIC_CURVE_TO__START_CONTROL || childFeature == DGPackage.Literals.CUBIC_CURVE_TO__END_CONTROL || childFeature == DGPackage.Literals.CUBIC_CURVE_TO__POINT;
+		if(qualify) {
+			return getString("_UI_CreateChild_text2", new Object[]{ getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DGItemProviderAdapterFactory.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DGItemProviderAdapterFactory.java
new file mode 100755
index 0000000..8553f38
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DGItemProviderAdapterFactory.java
@@ -0,0 +1,1084 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.dd.dg.util.DGAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class DGItemProviderAdapterFactory extends DGAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public DGItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+		supportedTypes.add(IItemColorProvider.class);
+		supportedTypes.add(IItemFontProvider.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Canvas} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CanvasItemProvider canvasItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Canvas}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCanvasAdapter() {
+		if(canvasItemProvider == null) {
+			canvasItemProvider = new CanvasItemProvider(this);
+		}
+		return canvasItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Group} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected GroupItemProvider groupItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Group}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createGroupAdapter() {
+		if(groupItemProvider == null) {
+			groupItemProvider = new GroupItemProvider(this);
+		}
+		return groupItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.MoveTo} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected MoveToItemProvider moveToItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.MoveTo}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createMoveToAdapter() {
+		if(moveToItemProvider == null) {
+			moveToItemProvider = new MoveToItemProvider(this);
+		}
+		return moveToItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.ClipPath} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ClipPathItemProvider clipPathItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.ClipPath}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createClipPathAdapter() {
+		if(clipPathItemProvider == null) {
+			clipPathItemProvider = new ClipPathItemProvider(this);
+		}
+		return clipPathItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Style} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected StyleItemProvider styleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Style}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createStyleAdapter() {
+		if(styleItemProvider == null) {
+			styleItemProvider = new StyleItemProvider(this);
+		}
+		return styleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Paint} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PaintItemProvider paintItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Paint}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createPaintAdapter() {
+		if(paintItemProvider == null) {
+			paintItemProvider = new PaintItemProvider(this);
+		}
+		return paintItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Circle} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CircleItemProvider circleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Circle}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCircleAdapter() {
+		if(circleItemProvider == null) {
+			circleItemProvider = new CircleItemProvider(this);
+		}
+		return circleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.ClosePath} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ClosePathItemProvider closePathItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.ClosePath}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createClosePathAdapter() {
+		if(closePathItemProvider == null) {
+			closePathItemProvider = new ClosePathItemProvider(this);
+		}
+		return closePathItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.CubicCurveTo} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CubicCurveToItemProvider cubicCurveToItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.CubicCurveTo}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createCubicCurveToAdapter() {
+		if(cubicCurveToItemProvider == null) {
+			cubicCurveToItemProvider = new CubicCurveToItemProvider(this);
+		}
+		return cubicCurveToItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Definitions} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected DefinitionsItemProvider definitionsItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Definitions}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createDefinitionsAdapter() {
+		if(definitionsItemProvider == null) {
+			definitionsItemProvider = new DefinitionsItemProvider(this);
+		}
+		return definitionsItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.StyleSheet} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected StyleSheetItemProvider styleSheetItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.StyleSheet}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createStyleSheetAdapter() {
+		if(styleSheetItemProvider == null) {
+			styleSheetItemProvider = new StyleSheetItemProvider(this);
+		}
+		return styleSheetItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.StyleRule} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected StyleRuleItemProvider styleRuleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.StyleRule}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createStyleRuleAdapter() {
+		if(styleRuleItemProvider == null) {
+			styleRuleItemProvider = new StyleRuleItemProvider(this);
+		}
+		return styleRuleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.StyleSelector} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected StyleSelectorItemProvider styleSelectorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.StyleSelector}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createStyleSelectorAdapter() {
+		if(styleSelectorItemProvider == null) {
+			styleSelectorItemProvider = new StyleSelectorItemProvider(this);
+		}
+		return styleSelectorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Ellipse} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EllipseItemProvider ellipseItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Ellipse}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createEllipseAdapter() {
+		if(ellipseItemProvider == null) {
+			ellipseItemProvider = new EllipseItemProvider(this);
+		}
+		return ellipseItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.EllipticalArcTo} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EllipticalArcToItemProvider ellipticalArcToItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.EllipticalArcTo}.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createEllipticalArcToAdapter() {
+		if(ellipticalArcToItemProvider == null) {
+			ellipticalArcToItemProvider = new EllipticalArcToItemProvider(this);
+		}
+		return ellipticalArcToItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.QuadraticCurveTo} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected QuadraticCurveToItemProvider quadraticCurveToItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.QuadraticCurveTo}.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createQuadraticCurveToAdapter() {
+		if(quadraticCurveToItemProvider == null) {
+			quadraticCurveToItemProvider = new QuadraticCurveToItemProvider(this);
+		}
+		return quadraticCurveToItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.GradientStop} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected GradientStopItemProvider gradientStopItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.GradientStop}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createGradientStopAdapter() {
+		if(gradientStopItemProvider == null) {
+			gradientStopItemProvider = new GradientStopItemProvider(this);
+		}
+		return gradientStopItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Image} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ImageItemProvider imageItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Image}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createImageAdapter() {
+		if(imageItemProvider == null) {
+			imageItemProvider = new ImageItemProvider(this);
+		}
+		return imageItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Line} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected LineItemProvider lineItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Line}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createLineAdapter() {
+		if(lineItemProvider == null) {
+			lineItemProvider = new LineItemProvider(this);
+		}
+		return lineItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Marker} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected MarkerItemProvider markerItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Marker}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createMarkerAdapter() {
+		if(markerItemProvider == null) {
+			markerItemProvider = new MarkerItemProvider(this);
+		}
+		return markerItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.LinearGradient} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected LinearGradientItemProvider linearGradientItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.LinearGradient}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createLinearGradientAdapter() {
+		if(linearGradientItemProvider == null) {
+			linearGradientItemProvider = new LinearGradientItemProvider(this);
+		}
+		return linearGradientItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.LineTo} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected LineToItemProvider lineToItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.LineTo}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createLineToAdapter() {
+		if(lineToItemProvider == null) {
+			lineToItemProvider = new LineToItemProvider(this);
+		}
+		return lineToItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Matrix} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected MatrixItemProvider matrixItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Matrix}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createMatrixAdapter() {
+		if(matrixItemProvider == null) {
+			matrixItemProvider = new MatrixItemProvider(this);
+		}
+		return matrixItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Path} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PathItemProvider pathItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Path}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createPathAdapter() {
+		if(pathItemProvider == null) {
+			pathItemProvider = new PathItemProvider(this);
+		}
+		return pathItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Pattern} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PatternItemProvider patternItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Pattern}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createPatternAdapter() {
+		if(patternItemProvider == null) {
+			patternItemProvider = new PatternItemProvider(this);
+		}
+		return patternItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Polygon} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PolygonItemProvider polygonItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Polygon}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createPolygonAdapter() {
+		if(polygonItemProvider == null) {
+			polygonItemProvider = new PolygonItemProvider(this);
+		}
+		return polygonItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Polyline} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PolylineItemProvider polylineItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Polyline}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createPolylineAdapter() {
+		if(polylineItemProvider == null) {
+			polylineItemProvider = new PolylineItemProvider(this);
+		}
+		return polylineItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.RadialGradient} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RadialGradientItemProvider radialGradientItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.RadialGradient}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createRadialGradientAdapter() {
+		if(radialGradientItemProvider == null) {
+			radialGradientItemProvider = new RadialGradientItemProvider(this);
+		}
+		return radialGradientItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Rectangle} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RectangleItemProvider rectangleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Rectangle}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createRectangleAdapter() {
+		if(rectangleItemProvider == null) {
+			rectangleItemProvider = new RectangleItemProvider(this);
+		}
+		return rectangleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.RootCanvas} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RootCanvasItemProvider rootCanvasItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.RootCanvas}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createRootCanvasAdapter() {
+		if(rootCanvasItemProvider == null) {
+			rootCanvasItemProvider = new RootCanvasItemProvider(this);
+		}
+		return rootCanvasItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Rotate} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RotateItemProvider rotateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Rotate}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createRotateAdapter() {
+		if(rotateItemProvider == null) {
+			rotateItemProvider = new RotateItemProvider(this);
+		}
+		return rotateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Scale} instances.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ScaleItemProvider scaleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Scale}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createScaleAdapter() {
+		if(scaleItemProvider == null) {
+			scaleItemProvider = new ScaleItemProvider(this);
+		}
+		return scaleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Skew} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected SkewItemProvider skewItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Skew}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createSkewAdapter() {
+		if(skewItemProvider == null) {
+			skewItemProvider = new SkewItemProvider(this);
+		}
+		return skewItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Text} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TextItemProvider textItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Text}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createTextAdapter() {
+		if(textItemProvider == null) {
+			textItemProvider = new TextItemProvider(this);
+		}
+		return textItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Translate} instances. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TranslateItemProvider translateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Translate}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createTranslateAdapter() {
+		if(translateItemProvider == null) {
+			translateItemProvider = new TranslateItemProvider(this);
+		}
+		return translateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.dd.dg.Use} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected UseItemProvider useItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.dd.dg.Use}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter createUseAdapter() {
+		if(useItemProvider == null) {
+			useItemProvider = new UseItemProvider(this);
+		}
+		return useItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if(isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if(!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+		if(parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void dispose() {
+		if(canvasItemProvider != null)
+			canvasItemProvider.dispose();
+		if(groupItemProvider != null)
+			groupItemProvider.dispose();
+		if(moveToItemProvider != null)
+			moveToItemProvider.dispose();
+		if(clipPathItemProvider != null)
+			clipPathItemProvider.dispose();
+		if(styleItemProvider != null)
+			styleItemProvider.dispose();
+		if(paintItemProvider != null)
+			paintItemProvider.dispose();
+		if(circleItemProvider != null)
+			circleItemProvider.dispose();
+		if(closePathItemProvider != null)
+			closePathItemProvider.dispose();
+		if(cubicCurveToItemProvider != null)
+			cubicCurveToItemProvider.dispose();
+		if(definitionsItemProvider != null)
+			definitionsItemProvider.dispose();
+		if(styleSheetItemProvider != null)
+			styleSheetItemProvider.dispose();
+		if(styleRuleItemProvider != null)
+			styleRuleItemProvider.dispose();
+		if(styleSelectorItemProvider != null)
+			styleSelectorItemProvider.dispose();
+		if(ellipseItemProvider != null)
+			ellipseItemProvider.dispose();
+		if(ellipticalArcToItemProvider != null)
+			ellipticalArcToItemProvider.dispose();
+		if(quadraticCurveToItemProvider != null)
+			quadraticCurveToItemProvider.dispose();
+		if(gradientStopItemProvider != null)
+			gradientStopItemProvider.dispose();
+		if(imageItemProvider != null)
+			imageItemProvider.dispose();
+		if(lineItemProvider != null)
+			lineItemProvider.dispose();
+		if(markerItemProvider != null)
+			markerItemProvider.dispose();
+		if(linearGradientItemProvider != null)
+			linearGradientItemProvider.dispose();
+		if(lineToItemProvider != null)
+			lineToItemProvider.dispose();
+		if(matrixItemProvider != null)
+			matrixItemProvider.dispose();
+		if(pathItemProvider != null)
+			pathItemProvider.dispose();
+		if(patternItemProvider != null)
+			patternItemProvider.dispose();
+		if(polygonItemProvider != null)
+			polygonItemProvider.dispose();
+		if(polylineItemProvider != null)
+			polylineItemProvider.dispose();
+		if(radialGradientItemProvider != null)
+			radialGradientItemProvider.dispose();
+		if(rectangleItemProvider != null)
+			rectangleItemProvider.dispose();
+		if(rootCanvasItemProvider != null)
+			rootCanvasItemProvider.dispose();
+		if(rotateItemProvider != null)
+			rotateItemProvider.dispose();
+		if(scaleItemProvider != null)
+			scaleItemProvider.dispose();
+		if(skewItemProvider != null)
+			skewItemProvider.dispose();
+		if(textItemProvider != null)
+			textItemProvider.dispose();
+		if(translateItemProvider != null)
+			translateItemProvider.dispose();
+		if(useItemProvider != null)
+			useItemProvider.dispose();
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DefinitionItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DefinitionItemProvider.java
new file mode 100755
index 0000000..4a07b11
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DefinitionItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Definition;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Definition} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class DefinitionItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public DefinitionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addIdPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Definition_id_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Definition_id_feature", "_UI_Definition_type"), DGPackage.Literals.DEFINITION__ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Definition)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Definition_type") : getString("_UI_Definition_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Definition.class)) {
+		case DGPackage.DEFINITION__ID:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DefinitionsItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DefinitionsItemProvider.java
new file mode 100755
index 0000000..47e78a9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/DefinitionsItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Definitions;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Definitions} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class DefinitionsItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public DefinitionsItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.DEFINITIONS__DEFINITION);
+			childrenFeatures.add(DGPackage.Literals.DEFINITIONS__STYLE_SHEET);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Definitions.gif. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Definitions"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Definitions_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Definitions.class)) {
+		case DGPackage.DEFINITIONS__DEFINITION:
+		case DGPackage.DEFINITIONS__STYLE_SHEET:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createGroup()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createCanvas()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createClipPath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createCircle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createEllipse()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createImage()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createLine()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createMarker()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createLinearGradient()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createPath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createPattern()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createPolygon()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createPolyline()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createRadialGradient()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createRectangle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createRootCanvas()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createText()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__DEFINITION, DGFactory.eINSTANCE.createUse()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.DEFINITIONS__STYLE_SHEET, DGFactory.eINSTANCE.createStyleSheet()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/EllipseItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/EllipseItemProvider.java
new file mode 100755
index 0000000..60cfd71
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/EllipseItemProvider.java
@@ -0,0 +1,145 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Ellipse;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Ellipse} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class EllipseItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EllipseItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.ELLIPSE__CENTER);
+			childrenFeatures.add(DGPackage.Literals.ELLIPSE__RADII);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Ellipse.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Ellipse"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Ellipse)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Ellipse_type") : getString("_UI_Ellipse_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Ellipse.class)) {
+		case DGPackage.ELLIPSE__CENTER:
+		case DGPackage.ELLIPSE__RADII:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.ELLIPSE__CENTER, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.ELLIPSE__RADII, DCFactory.eINSTANCE.createDimension()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/EllipticalArcToItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/EllipticalArcToItemProvider.java
new file mode 100755
index 0000000..441c812
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/EllipticalArcToItemProvider.java
@@ -0,0 +1,186 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.EllipticalArcTo;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.EllipticalArcTo} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class EllipticalArcToItemProvider extends PathCommandItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EllipticalArcToItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addRotationPropertyDescriptor(object);
+			addIsLargeArcPropertyDescriptor(object);
+			addIsSweepPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Rotation feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addRotationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_EllipticalArcTo_rotation_feature"), getString("_UI_PropertyDescriptor_description", "_UI_EllipticalArcTo_rotation_feature", "_UI_EllipticalArcTo_type"), DGPackage.Literals.ELLIPTICAL_ARC_TO__ROTATION, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Large Arc feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addIsLargeArcPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_EllipticalArcTo_isLargeArc_feature"), getString("_UI_PropertyDescriptor_description", "_UI_EllipticalArcTo_isLargeArc_feature", "_UI_EllipticalArcTo_type"), DGPackage.Literals.ELLIPTICAL_ARC_TO__IS_LARGE_ARC, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Sweep feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addIsSweepPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_EllipticalArcTo_isSweep_feature"), getString("_UI_PropertyDescriptor_description", "_UI_EllipticalArcTo_isSweep_feature", "_UI_EllipticalArcTo_type"), DGPackage.Literals.ELLIPTICAL_ARC_TO__IS_SWEEP, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.ELLIPTICAL_ARC_TO__RADII);
+			childrenFeatures.add(DGPackage.Literals.ELLIPTICAL_ARC_TO__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns EllipticalArcTo.gif.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/EllipticalArcTo"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		EllipticalArcTo ellipticalArcTo = (EllipticalArcTo)object;
+		return getString("_UI_EllipticalArcTo_type") + " " + ellipticalArcTo.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(EllipticalArcTo.class)) {
+		case DGPackage.ELLIPTICAL_ARC_TO__ROTATION:
+		case DGPackage.ELLIPTICAL_ARC_TO__IS_LARGE_ARC:
+		case DGPackage.ELLIPTICAL_ARC_TO__IS_SWEEP:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.ELLIPTICAL_ARC_TO__RADII:
+		case DGPackage.ELLIPTICAL_ARC_TO__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.ELLIPTICAL_ARC_TO__RADII, DCFactory.eINSTANCE.createDimension()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.ELLIPTICAL_ARC_TO__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GradientItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GradientItemProvider.java
new file mode 100755
index 0000000..e5aae1f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GradientItemProvider.java
@@ -0,0 +1,131 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Gradient;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Gradient} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class GradientItemProvider extends PaintServerItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public GradientItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.GRADIENT__STOP);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Gradient)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Gradient_type") : getString("_UI_Gradient_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Gradient.class)) {
+		case DGPackage.GRADIENT__STOP:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRADIENT__STOP, DGFactory.eINSTANCE.createGradientStop()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GradientStopItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GradientStopItemProvider.java
new file mode 100755
index 0000000..168f3e9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GradientStopItemProvider.java
@@ -0,0 +1,170 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.awt.Color;
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.GradientStop;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.GradientStop} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class GradientStopItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public GradientStopItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addColorPropertyDescriptor(object);
+			addOffsetPropertyDescriptor(object);
+			addOpacityPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Color feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addColorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GradientStop_color_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GradientStop_color_feature", "_UI_GradientStop_type"), DGPackage.Literals.GRADIENT_STOP__COLOR, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Offset feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addOffsetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GradientStop_offset_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GradientStop_offset_feature", "_UI_GradientStop_type"), DGPackage.Literals.GRADIENT_STOP__OFFSET, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Opacity feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addOpacityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GradientStop_opacity_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GradientStop_opacity_feature", "_UI_GradientStop_type"), DGPackage.Literals.GRADIENT_STOP__OPACITY, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns GradientStop.gif. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/GradientStop"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Color labelValue = ((GradientStop)object).getColor();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_GradientStop_type") : getString("_UI_GradientStop_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(GradientStop.class)) {
+		case DGPackage.GRADIENT_STOP__COLOR:
+		case DGPackage.GRADIENT_STOP__OFFSET:
+		case DGPackage.GRADIENT_STOP__OPACITY:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GraphicalElementItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GraphicalElementItemProvider.java
new file mode 100755
index 0000000..cbb93e9
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GraphicalElementItemProvider.java
@@ -0,0 +1,203 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.GraphicalElement;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.GraphicalElement} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class GraphicalElementItemProvider extends DefinitionItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public GraphicalElementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addClipPathPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+			addLayoutDataPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Clip Path feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addClipPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GraphicalElement_clipPath_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GraphicalElement_clipPath_feature", "_UI_GraphicalElement_type"), DGPackage.Literals.GRAPHICAL_ELEMENT__CLIP_PATH, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GraphicalElement_class_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GraphicalElement_class_feature", "_UI_GraphicalElement_type"), DGPackage.Literals.GRAPHICAL_ELEMENT__CLASS, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Layout Data feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addLayoutDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GraphicalElement_layoutData_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GraphicalElement_layoutData_feature", "_UI_GraphicalElement_type"), DGPackage.Literals.GRAPHICAL_ELEMENT__LAYOUT_DATA, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.GRAPHICAL_ELEMENT__STYLE);
+			childrenFeatures.add(DGPackage.Literals.GRAPHICAL_ELEMENT__TRANSFORM);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = getLabel((GraphicalElement)object);
+		return label == null || label.length() == 0 ? getString("_UI_GraphicalElement_type") : getString("_UI_GraphicalElement_type") + " " + label;
+	}
+
+	/**
+	 * Get the label of the given graphical element
+	 * 
+	 * @param element
+	 *        The graphical element
+	 * @return String label of the graphical element
+	 */
+	protected String getLabel(GraphicalElement element) {
+		String label = "";
+		if(element.getId() != null)
+			label += "id=" + element.getId();
+		if(!element.getClasses().isEmpty()) {
+			if(label.length() > 0)
+				label += ", ";
+			label += joinString("class", element.getClasses(), ",");
+		}
+		return (label.length() > 0) ? "[" + label + "]" : "";
+	}
+
+	private String joinString(String key, Collection<String> values, String sep) {
+		String s = "";
+		for(String v : values)
+			s += (s.length() > 0) ? ", " + v : v;
+		return key + "=" + s;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(GraphicalElement.class)) {
+		case DGPackage.GRAPHICAL_ELEMENT__CLASS:
+		case DGPackage.GRAPHICAL_ELEMENT__LAYOUT_DATA:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.GRAPHICAL_ELEMENT__STYLE:
+		case DGPackage.GRAPHICAL_ELEMENT__TRANSFORM:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRAPHICAL_ELEMENT__STYLE, DGFactory.eINSTANCE.createStyle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRAPHICAL_ELEMENT__TRANSFORM, DGFactory.eINSTANCE.createMatrix()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRAPHICAL_ELEMENT__TRANSFORM, DGFactory.eINSTANCE.createRotate()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRAPHICAL_ELEMENT__TRANSFORM, DGFactory.eINSTANCE.createScale()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRAPHICAL_ELEMENT__TRANSFORM, DGFactory.eINSTANCE.createSkew()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GRAPHICAL_ELEMENT__TRANSFORM, DGFactory.eINSTANCE.createTranslate()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GroupItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GroupItemProvider.java
new file mode 100755
index 0000000..7e8a5a0
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/GroupItemProvider.java
@@ -0,0 +1,173 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Group;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Group} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class GroupItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public GroupItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addLayoutPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Layout feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addLayoutPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Group_layout_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Group_layout_feature", "_UI_Group_type"), DGPackage.Literals.GROUP__LAYOUT, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.GROUP__MEMBER);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Group.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Group"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = getLabel((Group)object);
+		return label == null || label.length() == 0 ? getString("_UI_Group_type") : getString("_UI_Group_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Group.class)) {
+		case DGPackage.GROUP__LAYOUT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.GROUP__MEMBER:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createGroup()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createCanvas()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createClipPath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createCircle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createEllipse()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createImage()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createLine()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createMarker()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createPath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createPolygon()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createPolyline()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createRectangle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createRootCanvas()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createText()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.GROUP__MEMBER, DGFactory.eINSTANCE.createUse()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ImageItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ImageItemProvider.java
new file mode 100755
index 0000000..e96e5de
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ImageItemProvider.java
@@ -0,0 +1,170 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Image;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Image} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class ImageItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ImageItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addSourcePropertyDescriptor(object);
+			addIsAspectRatioPreservedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Source feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addSourcePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Image_source_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Image_source_feature", "_UI_Image_type"), DGPackage.Literals.IMAGE__SOURCE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Aspect Ratio Preserved feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addIsAspectRatioPreservedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Image_isAspectRatioPreserved_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Image_isAspectRatioPreserved_feature", "_UI_Image_type"), DGPackage.Literals.IMAGE__IS_ASPECT_RATIO_PRESERVED, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.IMAGE__BOUNDS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Image.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Image"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Image)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Image_type") : getString("_UI_Image_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Image.class)) {
+		case DGPackage.IMAGE__SOURCE:
+		case DGPackage.IMAGE__IS_ASPECT_RATIO_PRESERVED:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.IMAGE__BOUNDS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.IMAGE__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LineItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LineItemProvider.java
new file mode 100755
index 0000000..4fd819e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LineItemProvider.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Line;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Line} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class LineItemProvider extends MarkedElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LineItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.LINE__START);
+			childrenFeatures.add(DGPackage.Literals.LINE__END);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Line.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Line"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Line)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Line_type") : getString("_UI_Line_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Line.class)) {
+		case DGPackage.LINE__START:
+		case DGPackage.LINE__END:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.LINE__START, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.LINE__END, DCFactory.eINSTANCE.createPoint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+		boolean qualify = childFeature == DGPackage.Literals.LINE__START || childFeature == DGPackage.Literals.LINE__END;
+		if(qualify) {
+			return getString("_UI_CreateChild_text2", new Object[]{ getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LineToItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LineToItemProvider.java
new file mode 100755
index 0000000..5e636bc
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LineToItemProvider.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.LineTo;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.LineTo} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class LineToItemProvider extends PathCommandItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LineToItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.LINE_TO__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns LineTo.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/LineTo"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		LineTo lineTo = (LineTo)object;
+		return getString("_UI_LineTo_type") + " " + lineTo.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(LineTo.class)) {
+		case DGPackage.LINE_TO__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.LINE_TO__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LinearGradientItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LinearGradientItemProvider.java
new file mode 100755
index 0000000..fa06dde
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/LinearGradientItemProvider.java
@@ -0,0 +1,163 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.LinearGradient;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.LinearGradient} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class LinearGradientItemProvider extends GradientItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LinearGradientItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.LINEAR_GRADIENT__START);
+			childrenFeatures.add(DGPackage.Literals.LINEAR_GRADIENT__END);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns LinearGradient.gif.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/LinearGradient"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((LinearGradient)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_LinearGradient_type") : getString("_UI_LinearGradient_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(LinearGradient.class)) {
+		case DGPackage.LINEAR_GRADIENT__START:
+		case DGPackage.LINEAR_GRADIENT__END:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.LINEAR_GRADIENT__START, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.LINEAR_GRADIENT__END, DCFactory.eINSTANCE.createPoint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+		boolean qualify = childFeature == DGPackage.Literals.LINEAR_GRADIENT__START || childFeature == DGPackage.Literals.LINEAR_GRADIENT__END;
+		if(qualify) {
+			return getString("_UI_CreateChild_text2", new Object[]{ getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MarkedElementItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MarkedElementItemProvider.java
new file mode 100755
index 0000000..514c885
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MarkedElementItemProvider.java
@@ -0,0 +1,127 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.MarkedElement;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.MarkedElement} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class MarkedElementItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MarkedElementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addEndMarkerPropertyDescriptor(object);
+			addMidMarkerPropertyDescriptor(object);
+			addStartMarkerPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the End Marker feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addEndMarkerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_MarkedElement_endMarker_feature"), getString("_UI_PropertyDescriptor_description", "_UI_MarkedElement_endMarker_feature", "_UI_MarkedElement_type"), DGPackage.Literals.MARKED_ELEMENT__END_MARKER, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Mid Marker feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addMidMarkerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_MarkedElement_midMarker_feature"), getString("_UI_PropertyDescriptor_description", "_UI_MarkedElement_midMarker_feature", "_UI_MarkedElement_type"), DGPackage.Literals.MARKED_ELEMENT__MID_MARKER, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Start Marker feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addStartMarkerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_MarkedElement_startMarker_feature"), getString("_UI_PropertyDescriptor_description", "_UI_MarkedElement_startMarker_feature", "_UI_MarkedElement_type"), DGPackage.Literals.MARKED_ELEMENT__START_MARKER, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((MarkedElement)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_MarkedElement_type") : getString("_UI_MarkedElement_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MarkerItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MarkerItemProvider.java
new file mode 100755
index 0000000..308a50c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MarkerItemProvider.java
@@ -0,0 +1,145 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Marker;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Marker} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class MarkerItemProvider extends GroupItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MarkerItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.MARKER__SIZE);
+			childrenFeatures.add(DGPackage.Literals.MARKER__REFERENCE);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Marker.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Marker"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Marker)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Marker_type") : getString("_UI_Marker_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Marker.class)) {
+		case DGPackage.MARKER__SIZE:
+		case DGPackage.MARKER__REFERENCE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.MARKER__SIZE, DCFactory.eINSTANCE.createDimension()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.MARKER__REFERENCE, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MatrixItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MatrixItemProvider.java
new file mode 100755
index 0000000..a600f5c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MatrixItemProvider.java
@@ -0,0 +1,189 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Matrix;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Matrix} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class MatrixItemProvider extends TransformItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MatrixItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addAPropertyDescriptor(object);
+			addBPropertyDescriptor(object);
+			addCPropertyDescriptor(object);
+			addDPropertyDescriptor(object);
+			addEPropertyDescriptor(object);
+			addFPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the A feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addAPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Matrix_a_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Matrix_a_feature", "_UI_Matrix_type"), DGPackage.Literals.MATRIX__A, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the B feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addBPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Matrix_b_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Matrix_b_feature", "_UI_Matrix_type"), DGPackage.Literals.MATRIX__B, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the C feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addCPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Matrix_c_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Matrix_c_feature", "_UI_Matrix_type"), DGPackage.Literals.MATRIX__C, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the D feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addDPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Matrix_d_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Matrix_d_feature", "_UI_Matrix_type"), DGPackage.Literals.MATRIX__D, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the E feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addEPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Matrix_e_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Matrix_e_feature", "_UI_Matrix_type"), DGPackage.Literals.MATRIX__E, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the F feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Matrix_f_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Matrix_f_feature", "_UI_Matrix_type"), DGPackage.Literals.MATRIX__F, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Matrix.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Matrix"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Matrix matrix = (Matrix)object;
+		return getString("_UI_Matrix_type") + " " + matrix.getA();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Matrix.class)) {
+		case DGPackage.MATRIX__A:
+		case DGPackage.MATRIX__B:
+		case DGPackage.MATRIX__C:
+		case DGPackage.MATRIX__D:
+		case DGPackage.MATRIX__E:
+		case DGPackage.MATRIX__F:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MoveToItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MoveToItemProvider.java
new file mode 100755
index 0000000..7b4176b
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/MoveToItemProvider.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.MoveTo;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.MoveTo} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class MoveToItemProvider extends PathCommandItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MoveToItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.MOVE_TO__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns MoveTo.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/MoveTo"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		MoveTo moveTo = (MoveTo)object;
+		return getString("_UI_MoveTo_type") + " " + moveTo.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(MoveTo.class)) {
+		case DGPackage.MOVE_TO__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.MOVE_TO__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PaintItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PaintItemProvider.java
new file mode 100755
index 0000000..7a6918a
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PaintItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.awt.Color;
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Paint;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Paint} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class PaintItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PaintItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addColorPropertyDescriptor(object);
+			addPaintServerPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Color feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addColorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Paint_color_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Paint_color_feature", "_UI_Paint_type"), DGPackage.Literals.PAINT__COLOR, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Paint Server feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addPaintServerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Paint_paintServer_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Paint_paintServer_feature", "_UI_Paint_type"), DGPackage.Literals.PAINT__PAINT_SERVER, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This returns Paint.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Paint"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Color labelValue = ((Paint)object).getColor();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_Paint_type") : getString("_UI_Paint_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Paint.class)) {
+		case DGPackage.PAINT__COLOR:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PaintServerItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PaintServerItemProvider.java
new file mode 100755
index 0000000..8b46094
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PaintServerItemProvider.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.PaintServer;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.PaintServer} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class PaintServerItemProvider extends DefinitionItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PaintServerItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.PAINT_SERVER__TRANSFORM);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((PaintServer)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_PaintServer_type") : getString("_UI_PaintServer_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(PaintServer.class)) {
+		case DGPackage.PAINT_SERVER__TRANSFORM:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PAINT_SERVER__TRANSFORM, DGFactory.eINSTANCE.createMatrix()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PAINT_SERVER__TRANSFORM, DGFactory.eINSTANCE.createRotate()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PAINT_SERVER__TRANSFORM, DGFactory.eINSTANCE.createScale()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PAINT_SERVER__TRANSFORM, DGFactory.eINSTANCE.createSkew()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PAINT_SERVER__TRANSFORM, DGFactory.eINSTANCE.createTranslate()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PathCommandItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PathCommandItemProvider.java
new file mode 100755
index 0000000..76f1438
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PathCommandItemProvider.java
@@ -0,0 +1,133 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.PathCommand;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.PathCommand} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class PathCommandItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PathCommandItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addIsRelativePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Relative feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addIsRelativePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_PathCommand_isRelative_feature"), getString("_UI_PropertyDescriptor_description", "_UI_PathCommand_isRelative_feature", "_UI_PathCommand_type"), DGPackage.Literals.PATH_COMMAND__IS_RELATIVE, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		PathCommand pathCommand = (PathCommand)object;
+		return getString("_UI_PathCommand_type") + " " + pathCommand.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(PathCommand.class)) {
+		case DGPackage.PATH_COMMAND__IS_RELATIVE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PathItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PathItemProvider.java
new file mode 100755
index 0000000..73ddf1c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PathItemProvider.java
@@ -0,0 +1,147 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Path;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Path} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class PathItemProvider extends MarkedElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PathItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.PATH__COMMAND);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Path.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Path"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Path)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Path_type") : getString("_UI_Path_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Path.class)) {
+		case DGPackage.PATH__COMMAND:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATH__COMMAND, DGFactory.eINSTANCE.createMoveTo()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATH__COMMAND, DGFactory.eINSTANCE.createClosePath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATH__COMMAND, DGFactory.eINSTANCE.createCubicCurveTo()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATH__COMMAND, DGFactory.eINSTANCE.createEllipticalArcTo()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATH__COMMAND, DGFactory.eINSTANCE.createQuadraticCurveTo()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATH__COMMAND, DGFactory.eINSTANCE.createLineTo()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PatternItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PatternItemProvider.java
new file mode 100755
index 0000000..d173e1c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PatternItemProvider.java
@@ -0,0 +1,160 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Pattern;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Pattern} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class PatternItemProvider extends PaintServerItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PatternItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.PATTERN__BOUNDS);
+			childrenFeatures.add(DGPackage.Literals.PATTERN__TILE);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Pattern.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Pattern"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Pattern)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Pattern_type") : getString("_UI_Pattern_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Pattern.class)) {
+		case DGPackage.PATTERN__BOUNDS:
+		case DGPackage.PATTERN__TILE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createGroup()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createCanvas()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createClipPath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createCircle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createEllipse()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createImage()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createLine()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createMarker()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createPath()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createPolygon()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createPolyline()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createRectangle()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createRootCanvas()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createText()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.PATTERN__TILE, DGFactory.eINSTANCE.createUse()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PolygonItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PolygonItemProvider.java
new file mode 100755
index 0000000..edcff7d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PolygonItemProvider.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Polygon;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Polygon} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class PolygonItemProvider extends MarkedElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PolygonItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.POLYGON__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Polygon.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Polygon"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Polygon)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Polygon_type") : getString("_UI_Polygon_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Polygon.class)) {
+		case DGPackage.POLYGON__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.POLYGON__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PolylineItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PolylineItemProvider.java
new file mode 100755
index 0000000..3b45895
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/PolylineItemProvider.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Polyline;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Polyline} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class PolylineItemProvider extends MarkedElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public PolylineItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.POLYLINE__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Polyline.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Polyline"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Polyline)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Polyline_type") : getString("_UI_Polyline_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Polyline.class)) {
+		case DGPackage.POLYLINE__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.POLYLINE__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/QuadraticCurveToItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/QuadraticCurveToItemProvider.java
new file mode 100755
index 0000000..2e1da91
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/QuadraticCurveToItemProvider.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.QuadraticCurveTo;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.QuadraticCurveTo} object. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class QuadraticCurveToItemProvider extends PathCommandItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public QuadraticCurveToItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.QUADRATIC_CURVE_TO__CONTROL);
+			childrenFeatures.add(DGPackage.Literals.QUADRATIC_CURVE_TO__POINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns QuadraticCurveTo.gif.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/QuadraticCurveTo"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		QuadraticCurveTo quadraticCurveTo = (QuadraticCurveTo)object;
+		return getString("_UI_QuadraticCurveTo_type") + " " + quadraticCurveTo.isRelative();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(QuadraticCurveTo.class)) {
+		case DGPackage.QUADRATIC_CURVE_TO__CONTROL:
+		case DGPackage.QUADRATIC_CURVE_TO__POINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.QUADRATIC_CURVE_TO__CONTROL, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.QUADRATIC_CURVE_TO__POINT, DCFactory.eINSTANCE.createPoint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+		boolean qualify = childFeature == DGPackage.Literals.QUADRATIC_CURVE_TO__CONTROL || childFeature == DGPackage.Literals.QUADRATIC_CURVE_TO__POINT;
+		if(qualify) {
+			return getString("_UI_CreateChild_text2", new Object[]{ getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RadialGradientItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RadialGradientItemProvider.java
new file mode 100755
index 0000000..ea1a940
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RadialGradientItemProvider.java
@@ -0,0 +1,179 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.RadialGradient;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.RadialGradient} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class RadialGradientItemProvider extends GradientItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public RadialGradientItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addRadiusPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Radius feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addRadiusPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_RadialGradient_radius_feature"), getString("_UI_PropertyDescriptor_description", "_UI_RadialGradient_radius_feature", "_UI_RadialGradient_type"), DGPackage.Literals.RADIAL_GRADIENT__RADIUS, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.RADIAL_GRADIENT__CENTER);
+			childrenFeatures.add(DGPackage.Literals.RADIAL_GRADIENT__FOCUS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns RadialGradient.gif.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/RadialGradient"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((RadialGradient)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_RadialGradient_type") : getString("_UI_RadialGradient_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(RadialGradient.class)) {
+		case DGPackage.RADIAL_GRADIENT__RADIUS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.RADIAL_GRADIENT__CENTER:
+		case DGPackage.RADIAL_GRADIENT__FOCUS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.RADIAL_GRADIENT__CENTER, DCFactory.eINSTANCE.createPoint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.RADIAL_GRADIENT__FOCUS, DCFactory.eINSTANCE.createPoint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+		boolean qualify = childFeature == DGPackage.Literals.RADIAL_GRADIENT__CENTER || childFeature == DGPackage.Literals.RADIAL_GRADIENT__FOCUS;
+		if(qualify) {
+			return getString("_UI_CreateChild_text2", new Object[]{ getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RectangleItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RectangleItemProvider.java
new file mode 100755
index 0000000..f757077
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RectangleItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Rectangle;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Rectangle} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class RectangleItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public RectangleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addCornerRadiusPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Corner Radius feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addCornerRadiusPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Rectangle_cornerRadius_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Rectangle_cornerRadius_feature", "_UI_Rectangle_type"), DGPackage.Literals.RECTANGLE__CORNER_RADIUS, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.RECTANGLE__BOUNDS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Rectangle.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Rectangle"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Rectangle)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Rectangle_type") : getString("_UI_Rectangle_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Rectangle.class)) {
+		case DGPackage.RECTANGLE__CORNER_RADIUS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.RECTANGLE__BOUNDS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.RECTANGLE__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RootCanvasItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RootCanvasItemProvider.java
new file mode 100755
index 0000000..346c01f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RootCanvasItemProvider.java
@@ -0,0 +1,169 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.RootCanvas;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.RootCanvas} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class RootCanvasItemProvider extends CanvasItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public RootCanvasItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addBackgroundColorPropertyDescriptor(object);
+			addExternalStyleSheetPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Background Color feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addBackgroundColorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_RootCanvas_backgroundColor_feature"), getString("_UI_PropertyDescriptor_description", "_UI_RootCanvas_backgroundColor_feature", "_UI_RootCanvas_type"), DGPackage.Literals.ROOT_CANVAS__BACKGROUND_COLOR, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the External Style Sheet feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addExternalStyleSheetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_RootCanvas_externalStyleSheet_feature"), getString("_UI_PropertyDescriptor_description", "_UI_RootCanvas_externalStyleSheet_feature", "_UI_RootCanvas_type"), DGPackage.Literals.ROOT_CANVAS__EXTERNAL_STYLE_SHEET, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.ROOT_CANVAS__DEFINITIONS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns RootCanvas.gif. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/RootCanvas"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((RootCanvas)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_RootCanvas_type") : getString("_UI_RootCanvas_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(RootCanvas.class)) {
+		case DGPackage.ROOT_CANVAS__BACKGROUND_COLOR:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.ROOT_CANVAS__DEFINITIONS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.ROOT_CANVAS__DEFINITIONS, DGFactory.eINSTANCE.createDefinitions()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RotateItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RotateItemProvider.java
new file mode 100755
index 0000000..662bba0
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/RotateItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Rotate;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Rotate} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class RotateItemProvider extends TransformItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public RotateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addAnglePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Angle feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addAnglePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Rotate_angle_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Rotate_angle_feature", "_UI_Rotate_type"), DGPackage.Literals.ROTATE__ANGLE, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.ROTATE__CENTER);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Rotate.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Rotate"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Rotate rotate = (Rotate)object;
+		return getString("_UI_Rotate_type") + " " + rotate.getAngle();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Rotate.class)) {
+		case DGPackage.ROTATE__ANGLE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.ROTATE__CENTER:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.ROTATE__CENTER, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ScaleItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ScaleItemProvider.java
new file mode 100755
index 0000000..655a4f3
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/ScaleItemProvider.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Scale;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Scale} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class ScaleItemProvider extends TransformItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ScaleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addFactorXPropertyDescriptor(object);
+			addFactorYPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Factor X feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFactorXPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Scale_factorX_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Scale_factorX_feature", "_UI_Scale_type"), DGPackage.Literals.SCALE__FACTOR_X, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Factor Y feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFactorYPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Scale_factorY_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Scale_factorY_feature", "_UI_Scale_type"), DGPackage.Literals.SCALE__FACTOR_Y, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Scale.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Scale"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Scale scale = (Scale)object;
+		return getString("_UI_Scale_type") + " " + scale.getFactorX();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Scale.class)) {
+		case DGPackage.SCALE__FACTOR_X:
+		case DGPackage.SCALE__FACTOR_Y:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/SkewItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/SkewItemProvider.java
new file mode 100755
index 0000000..df62a7d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/SkewItemProvider.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Skew;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Skew} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class SkewItemProvider extends TransformItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public SkewItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addAngleXPropertyDescriptor(object);
+			addAngleYPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Angle X feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addAngleXPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Skew_angleX_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Skew_angleX_feature", "_UI_Skew_type"), DGPackage.Literals.SKEW__ANGLE_X, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Angle Y feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addAngleYPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Skew_angleY_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Skew_angleY_feature", "_UI_Skew_type"), DGPackage.Literals.SKEW__ANGLE_Y, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Skew.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Skew"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Skew skew = (Skew)object;
+		return getString("_UI_Skew_type") + " " + skew.getAngleX();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Skew.class)) {
+		case DGPackage.SKEW__ANGLE_X:
+		case DGPackage.SKEW__ANGLE_Y:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleItemProvider.java
new file mode 100755
index 0000000..df433b2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleItemProvider.java
@@ -0,0 +1,318 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Style;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Style} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class StyleItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public StyleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addFillPropertyDescriptor(object);
+			addFillOpacityPropertyDescriptor(object);
+			addStrokePropertyDescriptor(object);
+			addStrokeWidthPropertyDescriptor(object);
+			addStrokeOpacityPropertyDescriptor(object);
+			addStrokeDashLengthPropertyDescriptor(object);
+			addFontSizePropertyDescriptor(object);
+			addFontNamePropertyDescriptor(object);
+			addFontItalicPropertyDescriptor(object);
+			addFontBoldPropertyDescriptor(object);
+			addFontDecorationPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Fill feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFillPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fill_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fill_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FILL, true, false, false, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Fill Opacity feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFillOpacityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fillOpacity_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fillOpacity_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FILL_OPACITY, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stroke feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addStrokePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_stroke_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_stroke_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__STROKE, true, false, false, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stroke Width feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addStrokeWidthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_strokeWidth_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_strokeWidth_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__STROKE_WIDTH, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stroke Opacity feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addStrokeOpacityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_strokeOpacity_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_strokeOpacity_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__STROKE_OPACITY, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stroke Dash Length feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addStrokeDashLengthPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_strokeDashLength_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_strokeDashLength_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__STROKE_DASH_LENGTH, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Font Size feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFontSizePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fontSize_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fontSize_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FONT_SIZE, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Font Name feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFontNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fontName_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fontName_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FONT_NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Font Italic feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFontItalicPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fontItalic_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fontItalic_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FONT_ITALIC, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Font Bold feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFontBoldPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fontBold_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fontBold_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FONT_BOLD, true, false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Font Decoration feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addFontDecorationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Style_fontDecoration_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Style_fontDecoration_feature", "_UI_Style_type"), DGPackage.Literals.STYLE__FONT_DECORATION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.STYLE__FILL);
+			childrenFeatures.add(DGPackage.Literals.STYLE__STROKE);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Style.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Style"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Style)object).getFontName();
+		return label == null || label.length() == 0 ? getString("_UI_Style_type") : getString("_UI_Style_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Style.class)) {
+		case DGPackage.STYLE__FILL_OPACITY:
+		case DGPackage.STYLE__STROKE_WIDTH:
+		case DGPackage.STYLE__STROKE_OPACITY:
+		case DGPackage.STYLE__STROKE_DASH_LENGTH:
+		case DGPackage.STYLE__FONT_SIZE:
+		case DGPackage.STYLE__FONT_NAME:
+		case DGPackage.STYLE__FONT_ITALIC:
+		case DGPackage.STYLE__FONT_BOLD:
+		case DGPackage.STYLE__FONT_DECORATION:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.STYLE__FILL:
+		case DGPackage.STYLE__STROKE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.STYLE__FILL, DGFactory.eINSTANCE.createPaint()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.STYLE__STROKE, DGFactory.eINSTANCE.createPaint()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+		boolean qualify = childFeature == DGPackage.Literals.STYLE__FILL || childFeature == DGPackage.Literals.STYLE__STROKE;
+		if(qualify) {
+			return getString("_UI_CreateChild_text2", new Object[]{ getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleRuleItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleRuleItemProvider.java
new file mode 100755
index 0000000..d388179
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleRuleItemProvider.java
@@ -0,0 +1,165 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.StyleRule;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.StyleRule} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class StyleRuleItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public StyleRuleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.STYLE_RULE__SELECTOR);
+			childrenFeatures.add(DGPackage.Literals.STYLE_RULE__STYLE);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns StyleRule.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/StyleRule"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_StyleRule_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(StyleRule.class)) {
+		case DGPackage.STYLE_RULE__SELECTOR:
+		case DGPackage.STYLE_RULE__STYLE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.STYLE_RULE__SELECTOR, DGFactory.eINSTANCE.createStyleSelector()));
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.STYLE_RULE__STYLE, DGFactory.eINSTANCE.createStyle()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleSelectorItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleSelectorItemProvider.java
new file mode 100755
index 0000000..806ded2
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleSelectorItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.ElementKind;
+import org.eclipse.papyrus.dd.dg.StyleSelector;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.StyleSelector} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class StyleSelectorItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public StyleSelectorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addKindPropertyDescriptor(object);
+			addClassPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Kind feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addKindPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StyleSelector_kind_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StyleSelector_kind_feature", "_UI_StyleSelector_type"), DGPackage.Literals.STYLE_SELECTOR__KIND, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Class feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StyleSelector_class_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StyleSelector_class_feature", "_UI_StyleSelector_type"), DGPackage.Literals.STYLE_SELECTOR__CLASS, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns StyleSelector.gif. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/StyleSelector"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		ElementKind labelValue = ((StyleSelector)object).getKind();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ? getString("_UI_StyleSelector_type") : getString("_UI_StyleSelector_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(StyleSelector.class)) {
+		case DGPackage.STYLE_SELECTOR__KIND:
+		case DGPackage.STYLE_SELECTOR__CLASS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleSheetItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleSheetItemProvider.java
new file mode 100755
index 0000000..e979ef1
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/StyleSheetItemProvider.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.StyleSheet;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.StyleSheet} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class StyleSheetItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public StyleSheetItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.STYLE_SHEET__RULE);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns StyleSheet.gif. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/StyleSheet"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_StyleSheet_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(StyleSheet.class)) {
+		case DGPackage.STYLE_SHEET__RULE:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.STYLE_SHEET__RULE, DGFactory.eINSTANCE.createStyleRule()));
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TextItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TextItemProvider.java
new file mode 100755
index 0000000..eb9fad3
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TextItemProvider.java
@@ -0,0 +1,172 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Text;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Text} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class TextItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TextItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addDataPropertyDescriptor(object);
+			addAnchorPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Data feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addDataPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Text_data_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Text_data_feature", "_UI_Text_type"), DGPackage.Literals.TEXT__DATA, true, true, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Anchor feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addAnchorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Text_anchor_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Text_anchor_feature", "_UI_Text_type"), DGPackage.Literals.TEXT__ANCHOR, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.TEXT__BOUNDS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Text.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Text"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Text)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Text_type") : getString("_UI_Text_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Text.class)) {
+		case DGPackage.TEXT__DATA:
+		case DGPackage.TEXT__ANCHOR:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		case DGPackage.TEXT__BOUNDS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.TEXT__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TransformItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TransformItemProvider.java
new file mode 100755
index 0000000..1bc74ab
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TransformItemProvider.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Transform} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class TransformItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TransformItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Transform_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TranslateItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TranslateItemProvider.java
new file mode 100755
index 0000000..2a3b469
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/TranslateItemProvider.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Translate;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Translate} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class TranslateItemProvider extends TransformItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public TranslateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addDeltaXPropertyDescriptor(object);
+			addDeltaYPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Delta X feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addDeltaXPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Translate_deltaX_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Translate_deltaX_feature", "_UI_Translate_type"), DGPackage.Literals.TRANSLATE__DELTA_X, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Delta Y feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addDeltaYPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Translate_deltaY_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Translate_deltaY_feature", "_UI_Translate_type"), DGPackage.Literals.TRANSLATE__DELTA_Y, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns Translate.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Translate"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Translate translate = (Translate)object;
+		return getString("_UI_Translate_type") + " " + translate.getDeltaX();
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Translate.class)) {
+		case DGPackage.TRANSLATE__DELTA_X:
+		case DGPackage.TRANSLATE__DELTA_Y:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/UseItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/UseItemProvider.java
new file mode 100755
index 0000000..712044b
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/dg/provider/UseItemProvider.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.dg.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.dg.DGPackage;
+import org.eclipse.papyrus.dd.dg.Use;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.dg.Use} object.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class UseItemProvider extends GraphicalElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public UseItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addReferencedElementPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Referenced Element feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addReferencedElementPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Use_referencedElement_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Use_referencedElement_feature", "_UI_Use_type"), DGPackage.Literals.USE__REFERENCED_ELEMENT, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DGPackage.Literals.USE__BOUNDS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns Use.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Use"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Use)object).getId();
+		return label == null || label.length() == 0 ? getString("_UI_Use_type") : getString("_UI_Use_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Use.class)) {
+		case DGPackage.USE__BOUNDS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DGPackage.Literals.USE__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DIItemProviderAdapterFactory.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DIItemProviderAdapterFactory.java
new file mode 100755
index 0000000..e9ed9f3
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DIItemProviderAdapterFactory.java
@@ -0,0 +1,188 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.di.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.dd.di.util.DIAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class DIItemProviderAdapterFactory extends DIAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public DIItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+		supportedTypes.add(IItemColorProvider.class);
+		supportedTypes.add(IItemFontProvider.class);
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if(isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if(!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+		if(parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void dispose() {
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DiagramElementItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DiagramElementItemProvider.java
new file mode 100755
index 0000000..24912f8
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DiagramElementItemProvider.java
@@ -0,0 +1,125 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.di.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.papyrus.dd.di.DIPackage;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.di.DiagramElement} object.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class DiagramElementItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public DiagramElementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addDiagramPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Diagram feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addDiagramPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_DiagramElement_diagram_feature"), getString("_UI_PropertyDescriptor_description", "_UI_DiagramElement_diagram_feature", "_UI_DiagramElement_type"), DIPackage.Literals.DIAGRAM_ELEMENT__DIAGRAM, true, false, true, null, null, null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DiagramElement_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DiagramItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DiagramItemProvider.java
new file mode 100755
index 0000000..c66375f
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/DiagramItemProvider.java
@@ -0,0 +1,137 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.di.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.di.DIPackage;
+import org.eclipse.papyrus.dd.di.Diagram;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.di.Diagram} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class DiagramItemProvider extends ShapeItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public DiagramItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+			addNamePropertyDescriptor(object);
+			addDocumentationPropertyDescriptor(object);
+			addResolutionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Diagram_name_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Diagram_name_feature", "_UI_Diagram_type"), DIPackage.Literals.DIAGRAM__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Documentation feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addDocumentationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Diagram_documentation_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Diagram_documentation_feature", "_UI_Diagram_type"), DIPackage.Literals.DIAGRAM__DOCUMENTATION, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Resolution feature. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void addResolutionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Diagram_resolution_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Diagram_resolution_feature", "_UI_Diagram_type"), DIPackage.Literals.DIAGRAM__RESOLUTION, true, false, false, ItemPropertyDescriptor.REAL_VALUE_IMAGE, null, null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Diagram)object).getName();
+		return label == null || label.length() == 0 ? getString("_UI_Diagram_type") : getString("_UI_Diagram_type") + " " + label;
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Diagram.class)) {
+		case DIPackage.DIAGRAM__NAME:
+		case DIPackage.DIAGRAM__DOCUMENTATION:
+		case DIPackage.DIAGRAM__RESOLUTION:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/EdgeItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/EdgeItemProvider.java
new file mode 100755
index 0000000..147c1aa
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/EdgeItemProvider.java
@@ -0,0 +1,130 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.di.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.di.DIPackage;
+import org.eclipse.papyrus.dd.di.Edge;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.di.Edge} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class EdgeItemProvider extends DiagramElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EdgeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DIPackage.Literals.EDGE__WAYPOINT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Edge_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Edge.class)) {
+		case DIPackage.EDGE__WAYPOINT:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DIPackage.Literals.EDGE__WAYPOINT, DCFactory.eINSTANCE.createPoint()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/ShapeItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/ShapeItemProvider.java
new file mode 100755
index 0000000..c04faed
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/ShapeItemProvider.java
@@ -0,0 +1,130 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.di.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.dd.dc.DCFactory;
+import org.eclipse.papyrus.dd.di.DIPackage;
+import org.eclipse.papyrus.dd.di.Shape;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.di.Shape} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class ShapeItemProvider extends DiagramElementItemProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ShapeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if(childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DIPackage.Literals.SHAPE__BOUNDS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Shape_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		switch(notification.getFeatureID(Shape.class)) {
+		case DIPackage.SHAPE__BOUNDS:
+			fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+			return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+		newChildDescriptors.add(createChildParameter(DIPackage.Literals.SHAPE__BOUNDS, DCFactory.eINSTANCE.createBounds()));
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/StyleItemProvider.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/StyleItemProvider.java
new file mode 100755
index 0000000..e9ea4dd
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/di/provider/StyleItemProvider.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.di.provider;
+
+import java.util.Collection;
+import java.util.List;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemColorProvider;
+import org.eclipse.emf.edit.provider.IItemFontProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.papyrus.dd.provider.DDEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.dd.di.Style} object.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
+ * @generated
+ */
+public class StyleItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, IItemColorProvider, IItemFontProvider {
+
+	/**
+	 * This constructs an instance from a factory and a notifier. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public StyleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if(itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Style_type");
+	}
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
+	 * describing the children that can be created under this object. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return DDEditPlugin.INSTANCE;
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/provider/DDEditPlugin.java b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/provider/DDEditPlugin.java
new file mode 100755
index 0000000..f3184e1
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.edit/src-gen/org/eclipse/papyrus/dd/provider/DDEditPlugin.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *  
+ * Contributors:
+ *  CEA LIST - Initial API and implementation
+ */
+package org.eclipse.papyrus.dd.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
+/**
+ * This is the central singleton for the DI edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public final class DDEditPlugin extends EMFPlugin {
+
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final DDEditPlugin INSTANCE = new DDEditPlugin();
+
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static Implementation plugin;
+
+	/**
+	 * Create the instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	public DDEditPlugin() {
+		super(new ResourceLocator[]{ EcoreEditPlugin.INSTANCE, });
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getPluginResourceLocator() {
+		return plugin;
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	public static Implementation getPlugin() {
+		return plugin;
+	}
+
+	/**
+	 * The actual implementation of the Eclipse <b>Plugin</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static class Implementation extends EclipsePlugin {
+
+		/**
+		 * Creates an instance.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		public Implementation() {
+			super();
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
+	}
+}
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.classpath b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.classpath
new file mode 100755
index 0000000..5d0495e
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="src" path="src-gen"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.project b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.project
new file mode 100755
index 0000000..4dccc4d
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.dd.editor</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.settings/org.eclipse.jdt.core.prefs b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..e576692
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,281 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=0
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=0
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=0
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=0
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=1
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=1
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=next_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=next_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=false
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=150
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=1
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=200
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=0
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=false
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.settings/org.eclipse.jdt.ui.prefs b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..b5f980c
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+formatter_profile=_Zero blank Papyrus Formatter Profile CDM
+formatter_settings_version=12
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/META-INF/MANIFEST.MF b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/META-INF/MANIFEST.MF
new file mode 100755
index 0000000..2f12746
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Export-Package: org.eclipse.papyrus.dd.dg.presentation,
+ org.eclipse.papyrus.dd.presentation
+Require-Bundle: org.eclipse.core.runtime;bundle-version="3.9.100";visibility:=reexport,
+ org.eclipse.core.resources;bundle-version="3.8.101";visibility:=reexport,
+ org.eclipse.papyrus.dd.edit;bundle-version="0.7.0";visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;bundle-version="2.9.1";visibility:=reexport,
+ org.eclipse.emf.edit.ui;bundle-version="2.9.0";visibility:=reexport,
+ org.eclipse.ui.ide;bundle-version="3.9.2";visibility:=reexport,
+ org.eclipse.emf.ecore.edit;bundle-version="2.8.0";visibility:=reexport,
+ org.eclipse.ui.forms;bundle-version="3.6.1";visibility:=reexport,
+ org.eclipse.jface.text;bundle-version="3.8.101";visibility:=reexport,
+ org.eclipse.help;bundle-version="3.6.0";visibility:=reexport
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Version: 0.7.0.qualifier
+Bundle-Name: %pluginName
+Bundle-Localization: plugin
+Bundle-ManifestVersion: 2
+Bundle-Activator: org.eclipse.papyrus.dd.presentation.DDEditorPlugin$Implementation
+Bundle-SymbolicName: org.eclipse.papyrus.dd.editor;singleton:=true
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/about.html b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/about.html
new file mode 100755
index 0000000..3b13982
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>June 08, 2015</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available 
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/build.properties b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/build.properties
new file mode 100755
index 0000000..6b78dc3
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/build.properties
@@ -0,0 +1,21 @@
+# Copyright (c) 2014 CEA LIST.
+#  
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#  
+# Contributors:
+#  CEA LIST - Initial API and implementation
+
+bin.includes = .,\
+               icons/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties,\
+               scripts/,\
+               examples/,\
+               about.html
+jars.compile.order = .
+source.. = src/, src-gen/
+output.. = bin
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/.project b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/.project
new file mode 100755
index 0000000..fd43807
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.dd.examples</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Basic Shapes.dg b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Basic Shapes.dg
new file mode 100755
index 0000000..8b644c7
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Basic Shapes.dg
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<dg:RootCanvas xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dg="http://www.omg.org/spec/DD/20110901/DG">
+  <member xsi:type="dg:Circle" radius="40.0">
+    <center x="50.0" y="50.0"/>
+  </member>
+  <member xsi:type="dg:Ellipse">
+    <center x="150.0" y="50.0"/>
+    <radii width="50.0" height="30.0"/>
+  </member>
+  <member xsi:type="dg:Rectangle">
+    <bounds x="210.0" y="25.0" width="80.0" height="50.0"/>
+  </member>
+  <member xsi:type="dg:Rectangle" cornerRadius="10.0">
+    <bounds x="300.0" y="25.0" width="80.0" height="50.0"/>
+  </member>
+  <member xsi:type="dg:Line">
+    <style>
+      <stroke color="#000000"/>
+    </style>
+    <start x="390.0" y="80.0"/>
+    <end x="440.0" y="20.0"/>
+  </member>
+  <member xsi:type="dg:Polyline">
+    <style>
+      <fill/>
+      <stroke color="#000000"/>
+    </style>
+    <point x="450.0" y="80.0"/>
+    <point x="450.0" y="20.0"/>
+    <point x="480.0" y="50.0"/>
+    <point x="510.0" y="20.0"/>
+    <point x="510.0" y="80.0"/>
+  </member>
+  <member xsi:type="dg:Polygon">
+    <point x="520.0" y="40.0"/>
+    <point x="550.0" y="20.0"/>
+    <point x="580.0" y="40.0"/>
+    <point x="580.0" y="70.0"/>
+    <point x="550.0" y="90.0"/>
+    <point x="520.0" y="70.0"/>
+  </member>
+  <member xsi:type="dg:Path">
+    <command xsi:type="dg:MoveTo">
+      <point x="10.0" y="100.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="90.0" y="100.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="50.0" y="150.0"/>
+    </command>
+    <command xsi:type="dg:ClosePath"/>
+  </member>
+  <member xsi:type="dg:Path">
+    <command xsi:type="dg:MoveTo" isRelative="true">
+      <point x="140.0" y="100.0"/>
+    </command>
+    <command xsi:type="dg:LineTo" isRelative="true">
+      <point x="40.0" y="50.0"/>
+    </command>
+    <command xsi:type="dg:LineTo" isRelative="true">
+      <point x="-80.0" y="0.0"/>
+    </command>
+    <command xsi:type="dg:ClosePath" isRelative="true"/>
+  </member>
+  <member xsi:type="dg:Path">
+    <style>
+      <fill/>
+      <stroke color="#000000"/>
+    </style>
+    <command xsi:type="dg:MoveTo">
+      <point x="200.0" y="125.0"/>
+    </command>
+    <command xsi:type="dg:CubicCurveTo" isRelative="true">
+      <startControl x="0.0" y="-50.0"/>
+      <endControl x="75.0" y="50.0"/>
+      <point x="75.0" y="0.0"/>
+    </command>
+  </member>
+  <member xsi:type="dg:Path">
+    <style>
+      <fill/>
+      <stroke color="#000000"/>
+    </style>
+    <command xsi:type="dg:MoveTo">
+      <point x="300.0" y="150.0"/>
+    </command>
+    <command xsi:type="dg:QuadraticCurveTo" isRelative="true">
+      <control x="25.0" y="-100.0"/>
+      <point x="50.0" y="0.0"/>
+    </command>
+  </member>
+  <member xsi:type="dg:Path">
+    <command xsi:type="dg:MoveTo">
+      <point x="400.0" y="125.0"/>
+    </command>
+    <command xsi:type="dg:LineTo" isRelative="true">
+      <point x="-25.0" y="0.0"/>
+    </command>
+    <command xsi:type="dg:EllipticalArcTo" isRelative="true" isLargeArc="true">
+      <radii width="25.0" height="25.0"/>
+      <point x="25.0" y="-25.0"/>
+    </command>
+    <command xsi:type="dg:ClosePath" isRelative="true"/>
+  </member>
+  <member xsi:type="dg:Text" data="Hello World!">
+    <bounds x="450.0" y="100.0"/>
+  </member>
+  <member xsi:type="dg:Image" source="Tiger.jpg" isAspectRatioPreserved="true">
+    <bounds x="10.0" y="180.0" width="300.0" height="200.0"/>
+  </member>
+  <definitions>
+    <styleSheet>
+      <rule>
+        <selector/>
+        <style>
+          <fill color="#0000FF"/>
+          <stroke color="#FF0000"/>
+        </style>
+      </rule>
+      <rule>
+        <selector kind="text"/>
+        <style fontSize="40.0" fontName="Times New Roman" fontItalic="true" fontBold="true" fontDecoration="underline"/>
+      </rule>
+      <rule>
+        <selector kind="ellipse"/>
+        <style fillOpacity="0.25" strokeWidth="5.0" strokeOpacity="0.5">
+          <strokeDashLength>5.0</strokeDashLength>
+          <strokeDashLength>5.0</strokeDashLength>
+        </style>
+      </rule>
+    </styleSheet>
+  </definitions>
+</dg:RootCanvas>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Group Shapes.dg b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Group Shapes.dg
new file mode 100755
index 0000000..bc260bc
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Group Shapes.dg
@@ -0,0 +1,162 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<dg:RootCanvas xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dg="http://www.omg.org/spec/DD/20110901/DG" backgroundColor="#00FFFF">
+  <member xsi:type="dg:Group">
+    <member xsi:type="dg:Use" referencedElement="//@definitions/@definition.0"/>
+  </member>
+  <member xsi:type="dg:Canvas">
+    <member xsi:type="dg:Use" referencedElement="//@definitions/@definition.0"/>
+    <bounds x="120.0"/>
+  </member>
+  <member xsi:type="dg:Use" clipPath="//@definitions/@definition.1" referencedElement="//@definitions/@definition.0">
+    <bounds x="240.0" y="0.0"/>
+  </member>
+  <member xsi:type="dg:Use" referencedElement="//@definitions/@definition.0">
+    <style strokeWidth="3.0"/>
+    <bounds x="360.0"/>
+  </member>
+  <member xsi:type="dg:Use" referencedElement="//@definitions/@definition.0">
+    <transform xsi:type="dg:Translate" deltaY="100.0"/>
+    <transform xsi:type="dg:Scale" factorX="2.0" factorY="2.0"/>
+    <transform xsi:type="dg:Rotate" angle="90.0">
+      <center x="50.0" y="50.0"/>
+    </transform>
+    <transform xsi:type="dg:Skew" angleX="20.0"/>
+  </member>
+  <member xsi:type="dg:Use" referencedElement="//@definitions/@definition.0">
+    <transform xsi:type="dg:Matrix" a="2.0" d="2.0" e="200.0" f="100.0"/>
+  </member>
+  <definitions>
+    <definition xsi:type="dg:Group" id="head">
+      <member xsi:type="dg:Ellipse">
+        <class>ear</class>
+        <center x="92.0" y="50.0"/>
+        <radii width="5.0" height="10.0"/>
+      </member>
+      <member xsi:type="dg:Ellipse">
+        <class>ear</class>
+        <center x="8.0" y="50.0"/>
+        <radii width="5.0" height="10.0"/>
+      </member>
+      <member xsi:type="dg:Circle" radius="40.0">
+        <class>face</class>
+        <center x="50.0" y="50.0"/>
+      </member>
+      <member xsi:type="dg:Ellipse">
+        <class>eye</class>
+        <center x="30.0" y="40.0"/>
+        <radii width="10.0" height="5.0"/>
+      </member>
+      <member xsi:type="dg:Ellipse">
+        <class>eye</class>
+        <center x="70.0" y="40.0"/>
+        <radii width="10.0" height="5.0"/>
+      </member>
+      <member xsi:type="dg:Circle" radius="5.0">
+        <class>pupil</class>
+        <center x="30.0" y="40.0"/>
+      </member>
+      <member xsi:type="dg:Circle" radius="5.0">
+        <class>pupil</class>
+        <center x="70.0" y="40.0"/>
+      </member>
+      <member xsi:type="dg:Polygon">
+        <class>nose</class>
+        <point x="50.0" y="50.0"/>
+        <point x="55.0" y="60.0"/>
+        <point x="45.0" y="60.0"/>
+      </member>
+      <member xsi:type="dg:Path">
+        <class>mouth</class>
+        <command xsi:type="dg:MoveTo">
+          <point x="60.0" y="70.0"/>
+        </command>
+        <command xsi:type="dg:LineTo" isRelative="true">
+          <point x="-20.0"/>
+        </command>
+        <command xsi:type="dg:EllipticalArcTo" isRelative="true" isLargeArc="true">
+          <radii width="10.0" height="10.0"/>
+          <point x="20.0"/>
+        </command>
+      </member>
+      <member xsi:type="dg:Path">
+        <class>eyebrow</class>
+        <command xsi:type="dg:MoveTo">
+          <point x="22.0" y="28.0"/>
+        </command>
+        <command xsi:type="dg:CubicCurveTo" isRelative="true">
+          <startControl y="-10.0"/>
+          <endControl x="20.0" y="10.0"/>
+          <point x="20.0"/>
+        </command>
+      </member>
+      <member xsi:type="dg:Path">
+        <class>eyebrow</class>
+        <command xsi:type="dg:MoveTo">
+          <point x="58.0" y="28.0"/>
+        </command>
+        <command xsi:type="dg:CubicCurveTo" isRelative="true">
+          <startControl y="10.0"/>
+          <endControl x="20.0" y="-10.0"/>
+          <point x="20.0"/>
+        </command>
+      </member>
+    </definition>
+    <definition xsi:type="dg:ClipPath" id="clip1">
+      <member xsi:type="dg:Rectangle">
+        <bounds x="0.5" width="0.5" height="1.0"/>
+      </member>
+    </definition>
+    <styleSheet>
+      <rule>
+        <selector/>
+        <style>
+          <fill/>
+          <stroke color="#000000"/>
+        </style>
+      </rule>
+      <rule>
+        <selector>
+          <class>face</class>
+        </selector>
+        <style>
+          <fill color="#FFD197"/>
+        </style>
+      </rule>
+      <rule>
+        <selector>
+          <class>eye</class>
+        </selector>
+        <style>
+          <fill color="#FFFFFF"/>
+        </style>
+      </rule>
+      <rule>
+        <selector>
+          <class>pupil</class>
+        </selector>
+        <style>
+          <fill color="#0000FF"/>
+        </style>
+      </rule>
+      <rule>
+        <selector>
+          <class>nose</class>
+        </selector>
+        <selector>
+          <class>ear</class>
+        </selector>
+        <style>
+          <fill color="#FFCC00"/>
+        </style>
+      </rule>
+      <rule>
+        <selector>
+          <class>mouth</class>
+        </selector>
+        <style>
+          <fill color="#FF0000"/>
+        </style>
+      </rule>
+    </styleSheet>
+  </definitions>
+</dg:RootCanvas>
diff --git a/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Markers.dg b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Markers.dg
new file mode 100755
index 0000000..04ce302
--- /dev/null
+++ b/diagram-definition/plugins/org.eclipse.papyrus.dd.editor/examples/org.eclipse.papyrus.dd.examples/Markers.dg
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<dg:RootCanvas xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dg="http://www.omg.org/spec/DD/20110901/DG">
+  <member xsi:type="dg:Line" endMarker="//@definitions/@definition.1">
+    <start x="0.0" y="30.0"/>
+    <end x="90.0" y="30.0"/>
+  </member>
+  <member xsi:type="dg:Polyline" endMarker="//@definitions/@definition.0" midMarker="//@definitions/@definition.5">
+    <transform xsi:type="dg:Translate" deltaX="100.0"/>
+    <point x="0.0" y="30.0"/>
+    <point x="70.0" y="30.0"/>
+    <point x="90.0" y="60.0"/>
+  </member>
+  <member xsi:type="dg:Path" endMarker="//@definitions/@definition.2" midMarker="//@definitions/@definition.6" startMarker="//@definitions/@definition.4">
+    <transform xsi:type="dg:Translate" deltaX="200.0"/>
+    <command xsi:type="dg:MoveTo">
+      <point x="0.0" y="60.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="50.0" y="30.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="90.0" y="60.0"/>
+    </command>
+  </member>
+  <member xsi:type="dg:Path" endMarker="//@definitions/@definition.2" startMarker="//@definitions/@definition.3">
+    <transform xsi:type="dg:Translate" deltaX="300.0"/>
+    <command xsi:type="dg:MoveTo">
+      <point x="0.0" y="60.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="50.0" y="30.0"/>
+    </command>
+  </member>
+  <member xsi:type="dg:Path" endMarker="//@definitions/@definition.2" midMarker="//@definitions/@definition.5" startMarker="//@definitions/@definition.4">
+    <style strokeWidth="3.0"/>
+    <transform xsi:type="dg:Translate" deltaX="10.0" deltaY="50.0"/>
+    <command xsi:type="dg:MoveTo">
+      <point x="0.0" y="60.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="100.0" y="30.0"/>
+    </command>
+    <command xsi:type="dg:LineTo">
+      <point x="200.0" y="60.0"/>
+    </command>
+  </member>
+  <definitions>
+    <definition xsi:type="dg:Marker" id="open-arrow">
+      <member xsi:type="dg:Polyline">
+        <point/>
+        <point x="12.0" y="5.0"/>
+        <point y="10.0"/>
+      </member>
+      <size width="12.0" height="10.0"/>
+      <reference x="12.0" y="5.0"/>
+    </definition>
+    <definition xsi:type="dg:Marker" id="white-closed-arrow">
+      <member xsi:type="dg:Polygon">
+        <style>
+          <fill color="#FFFFFF"/>
+        </style>
+        <point/>
+        <point x="12.0" y="5.0"/>
+        <point y="10.0"/>
+      </member>
+      <size width="12.0" height="10.0"/>
+      <reference x="12.0" y="5.0"/>
+    </definition>
+    <definition xsi:type="dg:Marker" id="black-closed-arrow">
+      <member xsi:type="dg:Polygon">
+        <style>
+          <fill color="#000000"/>
+        </style>
+        <point/>
+        <point x="12.0" y="5.0"/>
+        <point y="10.0"/>
+      </member>
+      <size width="12.0" height="10.0"/>
+      <reference x="12.0" y="5.0"/>
+    </definition>
+    <definition xsi:type="dg:Marker" id="white-diamond">
+      <member xsi:type="dg:Polygon">
+        <style>
+          <fill color="#FFFFFF"/>
+        </style>
+        <point y="5.0"/>
+        <point x="8.0" y="0.0"/>
+        <point x="16.0" y="5.0"/>
+        <point x="8.0" y="10.0"/>
+      </member>
+      <size width="16.0" height="10.0"/>
+      <reference x="0.0" y="5.0"/>
+    </definition>
+    <definition xsi:type="dg:Marker" id="black-diamond">
+      <member xsi:type="dg:Polygon">
+        <style>
+          <fill color="#000000"/>
+        </style>
+        <point y="5.0"/>
+        <point x="8.0" y="0.0"/>
+        <point x="16.0" y="5.0"/>
+        <point x="8.0" y="10.0"/>
+      </member>
+      <size width="16.0" height="10.0"/>
+      <reference x="0.0" y="5.0"/>
+    </definition>
+    <definition xsi:type="dg:Marker" id="white-circle">
+      <member xsi:type="dg:Circle" radius="5.0">
+        <style>
+          <fill color="#FFFFFF"/>
+        </style>
+        <center x="5.0" y="5.0"/>
+      </member>
+      <size width="10.0" height="10.0"/>
+      <reference x="5.0" y=&quo