Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 242320 Details for
Bug 432986
Several Diagram specific concepts are no more proposed in the VSM editor.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Draft of a patch that enables EMF's native child extender mechanism
childExtender.patch (text/plain), 135.26 KB, created by
Pierre-Charles David
on 2014-04-25 05:36:28 EDT
(
hide
)
Description:
Draft of a patch that enables EMF's native child extender mechanism
Filename:
MIME Type:
Creator:
Pierre-Charles David
Created:
2014-04-25 05:36:28 EDT
Size:
135.26 KB
patch
obsolete
>diff --git a/plugins/org.eclipse.sirius.diagram.ui/plugin.xml b/plugins/org.eclipse.sirius.diagram.ui/plugin.xml >index 208b235..c21eeeb 100644 >--- a/plugins/org.eclipse.sirius.diagram.ui/plugin.xml >+++ b/plugins/org.eclipse.sirius.diagram.ui/plugin.xml >@@ -1788,6 +1788,13 @@ > org.eclipse.emf.edit.provider.IItemPropertySource"/> > </extension> > >+ <extension point="org.eclipse.emf.edit.childCreationExtenders"> >+ <!-- @generated diagram --> >+ <extender >+ uri="http://www.eclipse.org/sirius/description/1.1.0" >+ class="org.eclipse.sirius.diagram.description.provider.DescriptionItemProviderAdapterFactory$DescriptionChildCreationExtender"/> >+ </extension> >+ > <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories"> > <!-- @generated diagram --> > <factory >@@ -1814,6 +1821,16 @@ > org.eclipse.emf.edit.provider.IItemPropertySource"/> > </extension> > >+ <extension point="org.eclipse.emf.edit.childCreationExtenders"> >+ <!-- @generated diagram --> >+ <extender >+ uri="http://www.eclipse.org/sirius/description/1.1.0" >+ class="org.eclipse.sirius.diagram.description.tool.provider.ToolItemProviderAdapterFactory$DescriptionChildCreationExtender"/> >+ <extender >+ uri="http://www.eclipse.org/sirius/description/tool/1.1.0" >+ class="org.eclipse.sirius.diagram.description.tool.provider.ToolItemProviderAdapterFactory$ToolChildCreationExtender"/> >+ </extension> >+ > <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories"> > <!-- @generated diagram --> > <factory >diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/provider/DescriptionItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/provider/DescriptionItemProviderAdapterFactory.java >index e26d6ea..9cfa3d3 100644 >--- a/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/provider/DescriptionItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/provider/DescriptionItemProviderAdapterFactory.java >@@ -13,14 +13,20 @@ package org.eclipse.sirius.diagram.description.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.ecore.EObject; >+import org.eclipse.emf.edit.command.CommandParameter; >+import org.eclipse.emf.edit.domain.EditingDomain; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +34,13 @@ 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.sirius.diagram.description.DescriptionFactory; > import org.eclipse.sirius.diagram.description.util.DescriptionAdapterFactory; >+import org.eclipse.sirius.diagram.ui.provider.DiagramUIPlugin; >+import org.eclipse.sirius.viewpoint.description.DecorationDescriptionsSet; >+import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >+import org.eclipse.sirius.viewpoint.description.Viewpoint; >+import org.eclipse.sirius.viewpoint.description.util.DescriptionSwitch; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -640,4 +652,106 @@ public class DescriptionItemProviderAdapterFactory extends DescriptionAdapterFac > additionalLayerItemProvider.dispose(); > } > >+ /** >+ * A child creation extender for the {@link DescriptionPackage}. <!-- >+ * begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public static class DescriptionChildCreationExtender implements IChildCreationExtender { >+ /** >+ * The switch for creating child descriptors specific to each extended >+ * class. <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected static class CreationSwitch extends DescriptionSwitch<Object> { >+ /** >+ * The child descriptors being populated. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected List<Object> newChildDescriptors; >+ >+ /** >+ * The domain in which to create the children. <!-- begin-user-doc >+ * --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected EditingDomain editingDomain; >+ >+ /** >+ * Creates the a switch for populating child descriptors in the >+ * given domain. <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ CreationSwitch(List<Object> newChildDescriptors, EditingDomain editingDomain) { >+ this.newChildDescriptors = newChildDescriptors; >+ this.editingDomain = editingDomain; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseViewpoint(Viewpoint object) { >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.VIEWPOINT__OWNED_REPRESENTATIONS, DescriptionFactory.eINSTANCE.createDiagramDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.VIEWPOINT__OWNED_REPRESENTATIONS, DescriptionFactory.eINSTANCE.createDiagramImportDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.VIEWPOINT__OWNED_REPRESENTATION_EXTENSIONS, DescriptionFactory.eINSTANCE.createDiagramExtensionDescription())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseDecorationDescriptionsSet(DecorationDescriptionsSet object) { >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.DECORATION_DESCRIPTIONS_SET__DECORATION_DESCRIPTIONS, >+ DescriptionFactory.eINSTANCE.createMappingBasedDecoration())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected CommandParameter createChildParameter(Object feature, Object child) { >+ return new CommandParameter(null, feature, child); >+ } >+ >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<Object> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ ArrayList<Object> result = new ArrayList<Object>(); >+ new CreationSwitch(result, editingDomain).doSwitch((EObject) object); >+ return result; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return DiagramUIPlugin.INSTANCE; >+ } >+ } >+ > } >diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/tool/provider/ToolItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/tool/provider/ToolItemProviderAdapterFactory.java >index d5de17f..9616cca 100644 >--- a/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/tool/provider/ToolItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.diagram.ui/src-gen/org/eclipse/sirius/diagram/description/tool/provider/ToolItemProviderAdapterFactory.java >@@ -13,14 +13,20 @@ package org.eclipse.sirius.diagram.description.tool.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.ecore.EObject; >+import org.eclipse.emf.edit.command.CommandParameter; >+import org.eclipse.emf.edit.domain.EditingDomain; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +34,20 @@ 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.sirius.diagram.description.tool.ToolFactory; > import org.eclipse.sirius.diagram.description.tool.util.ToolAdapterFactory; >+import org.eclipse.sirius.diagram.ui.provider.DiagramUIPlugin; >+import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >+import org.eclipse.sirius.viewpoint.description.Environment; >+import org.eclipse.sirius.viewpoint.description.tool.ContainerModelOperation; >+import org.eclipse.sirius.viewpoint.description.tool.InitEdgeCreationOperation; >+import org.eclipse.sirius.viewpoint.description.tool.InitialContainerDropOperation; >+import org.eclipse.sirius.viewpoint.description.tool.InitialNodeCreationOperation; >+import org.eclipse.sirius.viewpoint.description.tool.InitialOperation; >+import org.eclipse.sirius.viewpoint.description.tool.SwitchChild; >+import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >+import org.eclipse.sirius.viewpoint.description.tool.util.ToolSwitch; >+import org.eclipse.sirius.viewpoint.description.util.DescriptionSwitch; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -883,4 +902,282 @@ public class ToolItemProviderAdapterFactory extends ToolAdapterFactory implement > containerDropDescriptionItemProvider.dispose(); > } > >+ /** >+ * A child creation extender for the {@link DescriptionPackage}. <!-- >+ * begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public static class DescriptionChildCreationExtender implements IChildCreationExtender { >+ /** >+ * The switch for creating child descriptors specific to each extended >+ * class. <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected static class CreationSwitch extends DescriptionSwitch<Object> { >+ /** >+ * The child descriptors being populated. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected List<Object> newChildDescriptors; >+ >+ /** >+ * The domain in which to create the children. <!-- begin-user-doc >+ * --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected EditingDomain editingDomain; >+ >+ /** >+ * Creates the a switch for populating child descriptors in the >+ * given domain. <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ CreationSwitch(List<Object> newChildDescriptors, EditingDomain editingDomain) { >+ this.newChildDescriptors = newChildDescriptors; >+ this.editingDomain = editingDomain; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseEnvironment(Environment object) { >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createToolGroup())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createNodeCreationDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createEdgeCreationDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createContainerCreationDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createDeleteElementDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createDoubleClickDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createReconnectEdgeDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createRequestDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createDirectEditLabel())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createBehaviorTool())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createDiagramCreationDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createDiagramNavigationDescription())); >+ >+ newChildDescriptors.add(createChildParameter(DescriptionPackage.Literals.ENVIRONMENT__DEFAULT_TOOLS, ToolFactory.eINSTANCE.createContainerDropDescription())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected CommandParameter createChildParameter(Object feature, Object child) { >+ return new CommandParameter(null, feature, child); >+ } >+ >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<Object> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ ArrayList<Object> result = new ArrayList<Object>(); >+ new CreationSwitch(result, editingDomain).doSwitch((EObject) object); >+ return result; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return DiagramUIPlugin.INSTANCE; >+ } >+ } >+ >+ /** >+ * A child creation extender for the {@link ToolPackage}. <!-- >+ * begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public static class ToolChildCreationExtender implements IChildCreationExtender { >+ /** >+ * The switch for creating child descriptors specific to each extended >+ * class. <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected static class CreationSwitch extends ToolSwitch<Object> { >+ /** >+ * The child descriptors being populated. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected List<Object> newChildDescriptors; >+ >+ /** >+ * The domain in which to create the children. <!-- begin-user-doc >+ * --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected EditingDomain editingDomain; >+ >+ /** >+ * Creates the a switch for populating child descriptors in the >+ * given domain. <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ CreationSwitch(List<Object> newChildDescriptors, EditingDomain editingDomain) { >+ this.newChildDescriptors = newChildDescriptors; >+ this.editingDomain = editingDomain; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseContainerModelOperation(ContainerModelOperation object) { >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.CONTAINER_MODEL_OPERATION__SUB_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.CONTAINER_MODEL_OPERATION__SUB_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateEdgeView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.CONTAINER_MODEL_OPERATION__SUB_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createNavigation())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseInitialNodeCreationOperation(InitialNodeCreationOperation object) { >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_NODE_CREATION_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_NODE_CREATION_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateEdgeView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_NODE_CREATION_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createNavigation())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseInitialOperation(InitialOperation object) { >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateEdgeView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createNavigation())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseInitEdgeCreationOperation(InitEdgeCreationOperation object) { >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INIT_EDGE_CREATION_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INIT_EDGE_CREATION_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateEdgeView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INIT_EDGE_CREATION_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createNavigation())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseInitialContainerDropOperation(InitialContainerDropOperation object) { >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_CONTAINER_DROP_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_CONTAINER_DROP_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateEdgeView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.INITIAL_CONTAINER_DROP_OPERATION__FIRST_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createNavigation())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ @Override >+ public Object caseSwitchChild(SwitchChild object) { >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.SWITCH_CHILD__SUB_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.SWITCH_CHILD__SUB_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createCreateEdgeView())); >+ >+ newChildDescriptors.add(createChildParameter(ToolPackage.Literals.SWITCH_CHILD__SUB_MODEL_OPERATIONS, ToolFactory.eINSTANCE.createNavigation())); >+ >+ return null; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected CommandParameter createChildParameter(Object feature, Object child) { >+ return new CommandParameter(null, feature, child); >+ } >+ >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<Object> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ ArrayList<Object> result = new ArrayList<Object>(); >+ new CreationSwitch(result, editingDomain).doSwitch((EObject) object); >+ return result; >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return DiagramUIPlugin.INSTANCE; >+ } >+ } >+ > } >diff --git a/plugins/org.eclipse.sirius.diagram/model/diagram.genmodel b/plugins/org.eclipse.sirius.diagram/model/diagram.genmodel >index 5daa39a..b23e3fb 100644 >--- a/plugins/org.eclipse.sirius.diagram/model/diagram.genmodel >+++ b/plugins/org.eclipse.sirius.diagram/model/diagram.genmodel >@@ -329,7 +329,7 @@ > <genOperations ecoreOperation="diagram.ecore#//DragAndDropTarget/getDragAndDropDescription"/> > </genClasses> > <nestedGenPackages prefix="Description" basePackage="org.eclipse.sirius.diagram" >- disposableProviderFactory="true" ecorePackage="diagram.ecore#//description"> >+ disposableProviderFactory="true" childCreationExtenders="true" ecorePackage="diagram.ecore#//description"> > <genEnums ecoreEnum="diagram.ecore#//description/FoldingStyle"> > <genEnumLiterals ecoreEnumLiteral="diagram.ecore#//description/FoldingStyle/NONE"/> > <genEnumLiterals ecoreEnumLiteral="diagram.ecore#//description/FoldingStyle/SOURCE"/> >@@ -647,7 +647,7 @@ > propertySortChoices="true" ecoreFeature="ecore:EReference diagram.ecore#//description/DragAndDropTargetDescription/dropDescriptions"/> > </genClasses> > <nestedGenPackages prefix="Style" basePackage="org.eclipse.sirius.diagram.description" >- disposableProviderFactory="true" ecorePackage="diagram.ecore#//description/style"> >+ disposableProviderFactory="true" childCreationExtenders="true" ecorePackage="diagram.ecore#//description/style"> > <genClasses ecoreClass="diagram.ecore#//description/style/BorderedStyleDescription"> > <genFeatures createChild="false" propertyCategory="Border" propertyDescription="Expression returning the size of the border." > ecoreFeature="ecore:EAttribute diagram.ecore#//description/style/BorderedStyleDescription/borderSizeComputationExpression"/> >@@ -755,7 +755,7 @@ > <genClasses ecoreClass="diagram.ecore#//description/style/BracketEdgeStyleDescription"/> > </nestedGenPackages> > <nestedGenPackages prefix="Tool" basePackage="org.eclipse.sirius.diagram.description" >- disposableProviderFactory="true" ecorePackage="diagram.ecore#//description/tool"> >+ disposableProviderFactory="true" childCreationExtenders="true" ecorePackage="diagram.ecore#//description/tool"> > <genEnums ecoreEnum="diagram.ecore#//description/tool/ReconnectionKind"> > <genEnumLiterals ecoreEnumLiteral="diagram.ecore#//description/tool/ReconnectionKind/RECONNECT_TARGET"/> > <genEnumLiterals ecoreEnumLiteral="diagram.ecore#//description/tool/ReconnectionKind/RECONNECT_SOURCE"/> >@@ -937,7 +937,7 @@ > </genClasses> > </nestedGenPackages> > <nestedGenPackages prefix="Filter" basePackage="org.eclipse.sirius.diagram.description" >- disposableProviderFactory="true" ecorePackage="diagram.ecore#//description/filter"> >+ disposableProviderFactory="true" childCreationExtenders="true" ecorePackage="diagram.ecore#//description/filter"> > <genEnums ecoreEnum="diagram.ecore#//description/filter/FilterKind"> > <genEnumLiterals ecoreEnumLiteral="diagram.ecore#//description/filter/FilterKind/HIDE"/> > <genEnumLiterals ecoreEnumLiteral="diagram.ecore#//description/filter/FilterKind/COLLAPSE"/> >@@ -975,7 +975,7 @@ > </genClasses> > </nestedGenPackages> > <nestedGenPackages prefix="Concern" basePackage="org.eclipse.sirius.diagram.description" >- disposableProviderFactory="true" ecorePackage="diagram.ecore#//description/concern"> >+ disposableProviderFactory="true" childCreationExtenders="true" ecorePackage="diagram.ecore#//description/concern"> > <genClasses ecoreClass="diagram.ecore#//description/concern/ConcernSet"> > <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference diagram.ecore#//description/concern/ConcernSet/ownedConcernDescriptions"/> > </genClasses> >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/AuditItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/AuditItemProviderAdapterFactory.java >index 5ef6f84..f686a8f 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/AuditItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/AuditItemProviderAdapterFactory.java >@@ -13,14 +13,19 @@ package org.eclipse.sirius.viewpoint.description.audit.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.edit.domain.EditingDomain; > import org.eclipse.emf.edit.provider.ChangeNotifier; >+import org.eclipse.emf.edit.provider.ChildCreationExtenderManager; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +33,9 @@ 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.sirius.viewpoint.description.audit.AuditPackage; > import org.eclipse.sirius.viewpoint.description.audit.util.AuditAdapterFactory; >+import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -40,7 +47,7 @@ import org.eclipse.sirius.viewpoint.description.audit.util.AuditAdapterFactory; > * > * @generated > */ >-public class AuditItemProviderAdapterFactory extends AuditAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { >+public class AuditItemProviderAdapterFactory extends AuditAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender { > /** > * This keeps track of the root adapter factory that delegates to this > * adapter factory. <!-- begin-user-doc --> <!-- end-user-doc --> >@@ -59,6 +66,14 @@ public class AuditItemProviderAdapterFactory extends AuditAdapterFactory impleme > protected IChangeNotifier changeNotifier = new ChangeNotifier(); > > /** >+ * This helps manage the child creation extenders. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(SiriusEditPlugin.INSTANCE, AuditPackage.eNS_URI); >+ >+ /** > * This keeps track of all the supported types checked by > * {@link #isFactoryForType isFactoryForType}. <!-- begin-user-doc --> <!-- > * end-user-doc --> >@@ -165,6 +180,33 @@ public class AuditItemProviderAdapterFactory extends AuditAdapterFactory impleme > } > > /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public List<IChildCreationExtender> getChildCreationExtenders() { >+ return childCreationExtenderManager.getChildCreationExtenders(); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return childCreationExtenderManager; >+ } >+ >+ /** > * This adds a listener. <!-- begin-user-doc --> <!-- end-user-doc --> > * > * @generated >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/InformationSectionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/InformationSectionItemProvider.java >index cbcaf31..f0d97e3 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/InformationSectionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/audit/provider/InformationSectionItemProvider.java >@@ -17,6 +17,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -24,7 +25,6 @@ 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.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -105,7 +105,7 @@ public class InformationSectionItemProvider extends ItemProviderAdapter implemen > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AbstractMappingImportItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AbstractMappingImportItemProvider.java >index 142ffe8..4197fc5 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AbstractMappingImportItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AbstractMappingImportItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.AbstractMappingImport; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -146,7 +146,7 @@ public class AbstractMappingImportItemProvider extends ItemProviderAdapter imple > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AnnotationEntryItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AnnotationEntryItemProvider.java >index 30ba8a7..9f3a486 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AnnotationEntryItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/AnnotationEntryItemProvider.java >@@ -20,6 +20,7 @@ import org.eclipse.emf.common.util.ResourceLocator; > import org.eclipse.emf.ecore.EStructuralFeature; > import org.eclipse.emf.ecore.EcoreFactory; > import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; >+import org.eclipse.emf.edit.provider.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -31,7 +32,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.AnnotationEntry; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -181,7 +181,7 @@ public class AnnotationEntryItemProvider extends ItemProviderAdapter implements > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorDescriptionItemProvider.java >index 97041b2..d1e078a 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorDescriptionItemProvider.java >@@ -17,6 +17,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -24,7 +25,6 @@ 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.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -105,7 +105,7 @@ public class ColorDescriptionItemProvider extends ItemProviderAdapter implements > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorStepItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorStepItemProvider.java >index ae51ed4..5860d36 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorStepItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ColorStepItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.ColorStep; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -152,7 +152,7 @@ public class ColorStepItemProvider extends ItemProviderAdapter implements IEditi > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ConditionalStyleDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ConditionalStyleDescriptionItemProvider.java >index e5d31c8..a5ad6ed 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ConditionalStyleDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/ConditionalStyleDescriptionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.ConditionalStyleDescription; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -131,7 +131,7 @@ public class ConditionalStyleDescriptionItemProvider extends ItemProviderAdapter > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/CustomizationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/CustomizationItemProvider.java >index 754b7f2..343c9e6 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/CustomizationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/CustomizationItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.Customization; > import org.eclipse.sirius.viewpoint.description.DescriptionFactory; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -164,7 +164,7 @@ public class CustomizationItemProvider extends ItemProviderAdapter implements IE > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationEntryItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationEntryItemProvider.java >index 0dad678..cf26351 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationEntryItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationEntryItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DAnnotationEntry; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -155,7 +155,7 @@ public class DAnnotationEntryItemProvider extends ItemProviderAdapter implements > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationItemProvider.java >index e650915..855c4ed 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DAnnotationItemProvider.java >@@ -21,6 +21,7 @@ import org.eclipse.emf.ecore.EStructuralFeature; > import org.eclipse.emf.ecore.EcoreFactory; > import org.eclipse.emf.ecore.EcorePackage; > import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; >+import org.eclipse.emf.edit.provider.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -32,7 +33,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DAnnotation; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -182,7 +182,7 @@ public class DAnnotationItemProvider extends ItemProviderAdapter implements IEdi > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DModelElementItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DModelElementItemProvider.java >index 0131f2f..32a79d6 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DModelElementItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DModelElementItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DModelElement; > import org.eclipse.sirius.viewpoint.description.DescriptionFactory; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -151,7 +151,7 @@ public class DModelElementItemProvider extends ItemProviderAdapter implements IE > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionItemProvider.java >index c2dd9e7..3a41291 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DecorationDescription; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -173,7 +173,7 @@ public class DecorationDescriptionItemProvider extends ItemProviderAdapter imple > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionsSetItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionsSetItemProvider.java >index c08fd47..1ce4613 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionsSetItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DecorationDescriptionsSetItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DecorationDescriptionsSet; > import org.eclipse.sirius.viewpoint.description.DescriptionFactory; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -162,7 +162,7 @@ public class DecorationDescriptionsSetItemProvider extends ItemProviderAdapter i > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DescriptionItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DescriptionItemProviderAdapterFactory.java >index e4c809e..b1c8931 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DescriptionItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DescriptionItemProviderAdapterFactory.java >@@ -13,14 +13,19 @@ package org.eclipse.sirius.viewpoint.description.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.edit.domain.EditingDomain; > import org.eclipse.emf.edit.provider.ChangeNotifier; >+import org.eclipse.emf.edit.provider.ChildCreationExtenderManager; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +33,9 @@ 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.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.util.DescriptionAdapterFactory; >+import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -40,7 +47,7 @@ import org.eclipse.sirius.viewpoint.description.util.DescriptionAdapterFactory; > * > * @generated > */ >-public class DescriptionItemProviderAdapterFactory extends DescriptionAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { >+public class DescriptionItemProviderAdapterFactory extends DescriptionAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender { > /** > * This keeps track of the root adapter factory that delegates to this > * adapter factory. <!-- begin-user-doc --> <!-- end-user-doc --> >@@ -59,6 +66,14 @@ public class DescriptionItemProviderAdapterFactory extends DescriptionAdapterFac > protected IChangeNotifier changeNotifier = new ChangeNotifier(); > > /** >+ * This helps manage the child creation extenders. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(SiriusEditPlugin.INSTANCE, DescriptionPackage.eNS_URI); >+ >+ /** > * This keeps track of all the supported types checked by > * {@link #isFactoryForType isFactoryForType}. <!-- begin-user-doc --> <!-- > * end-user-doc --> >@@ -740,6 +755,33 @@ public class DescriptionItemProviderAdapterFactory extends DescriptionAdapterFac > } > > /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public List<IChildCreationExtender> getChildCreationExtenders() { >+ return childCreationExtenderManager.getChildCreationExtenders(); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return childCreationExtenderManager; >+ } >+ >+ /** > * This adds a listener. <!-- begin-user-doc --> <!-- end-user-doc --> > * > * @generated >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DocumentedElementItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DocumentedElementItemProvider.java >index 83c289f..8bbd7dd 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DocumentedElementItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/DocumentedElementItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.DocumentedElement; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -130,7 +130,7 @@ public class DocumentedElementItemProvider extends ItemProviderAdapter implement > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EStructuralFeatureCustomizationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EStructuralFeatureCustomizationItemProvider.java >index 4bd105a..256fe75 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EStructuralFeatureCustomizationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EStructuralFeatureCustomizationItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.EStructuralFeatureCustomization; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -143,7 +143,7 @@ public class EStructuralFeatureCustomizationItemProvider extends ItemProviderAda > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EndUserDocumentedElementItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EndUserDocumentedElementItemProvider.java >index 987c1aa..9b9a31c 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EndUserDocumentedElementItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EndUserDocumentedElementItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.EndUserDocumentedElement; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -131,7 +131,7 @@ public class EndUserDocumentedElementItemProvider extends ItemProviderAdapter im > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EnvironmentItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EnvironmentItemProvider.java >index e99bfc8..7d71b7c 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EnvironmentItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/EnvironmentItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -31,7 +32,6 @@ import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.Environment; > import org.eclipse.sirius.viewpoint.description.style.StyleFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -186,7 +186,7 @@ public class EnvironmentItemProvider extends ItemProviderAdapter implements IEdi > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/IdentifiedElementItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/IdentifiedElementItemProvider.java >index 1f885d2..2ed09ba 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/IdentifiedElementItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/IdentifiedElementItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.IdentifiedElement; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -155,7 +155,7 @@ public class IdentifiedElementItemProvider extends ItemProviderAdapter implement > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/JavaExtensionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/JavaExtensionItemProvider.java >index a510cba..848de28 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/JavaExtensionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/JavaExtensionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.JavaExtension; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -141,7 +141,7 @@ public class JavaExtensionItemProvider extends ItemProviderAdapter implements IE > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/MetamodelExtensionSettingItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/MetamodelExtensionSettingItemProvider.java >index e71e9d5..92715e6 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/MetamodelExtensionSettingItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/MetamodelExtensionSettingItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -26,7 +27,6 @@ import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; > import org.eclipse.emf.edit.provider.ITreeItemContentProvider; > import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -132,7 +132,7 @@ public class MetamodelExtensionSettingItemProvider extends ItemProviderAdapter i > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/PasteTargetDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/PasteTargetDescriptionItemProvider.java >index b3a911b..4f63773 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/PasteTargetDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/PasteTargetDescriptionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -26,7 +27,6 @@ import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; > import org.eclipse.emf.edit.provider.ITreeItemContentProvider; > import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -120,7 +120,7 @@ public class PasteTargetDescriptionItemProvider extends ItemProviderAdapter impl > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/RepresentationTemplateItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/RepresentationTemplateItemProvider.java >index 6fc1207..6051739 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/RepresentationTemplateItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/RepresentationTemplateItemProvider.java >@@ -19,6 +19,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -30,7 +31,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.RepresentationTemplate; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -167,7 +167,7 @@ public class RepresentationTemplateItemProvider extends ItemProviderAdapter impl > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/SytemColorsPaletteItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/SytemColorsPaletteItemProvider.java >index 446a485..c7c7036 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/SytemColorsPaletteItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/SytemColorsPaletteItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionFactory; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.SytemColorsPalette; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -162,7 +162,7 @@ public class SytemColorsPaletteItemProvider extends ItemProviderAdapter implemen > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorItemProvider.java >index ff8e016..333dd59 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.UserColor; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -139,7 +139,7 @@ public class UserColorItemProvider extends ItemProviderAdapter implements IEditi > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorsPaletteItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorsPaletteItemProvider.java >index 9fcacae..5878699 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorsPaletteItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/UserColorsPaletteItemProvider.java >@@ -19,6 +19,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -32,7 +33,6 @@ import org.eclipse.sirius.viewpoint.description.DescriptionFactory; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.InterpolatedColor; > import org.eclipse.sirius.viewpoint.description.UserColorsPalette; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -189,7 +189,7 @@ public class UserColorsPaletteItemProvider extends ItemProviderAdapter implement > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationItemProvider.java >index f0faeb4..203a8db 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationItemProvider.java >@@ -19,6 +19,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -31,7 +32,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.DescriptionFactory; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; > import org.eclipse.sirius.viewpoint.description.VSMElementCustomization; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -183,7 +183,7 @@ public class VSMElementCustomizationItemProvider extends ItemProviderAdapter imp > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationReuseItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationReuseItemProvider.java >index ef8030a..4f4ce86 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationReuseItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/provider/VSMElementCustomizationReuseItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -26,7 +27,6 @@ import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; > import org.eclipse.emf.edit.provider.ITreeItemContentProvider; > import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.sirius.viewpoint.description.DescriptionPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -144,7 +144,7 @@ public class VSMElementCustomizationReuseItemProvider extends ItemProviderAdapte > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/BasicLabelStyleDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/BasicLabelStyleDescriptionItemProvider.java >index 42d107e..b60a969 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/BasicLabelStyleDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/BasicLabelStyleDescriptionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.style.BasicLabelStyleDescription; > import org.eclipse.sirius.viewpoint.description.style.StylePackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -215,7 +215,7 @@ public class BasicLabelStyleDescriptionItemProvider extends ItemProviderAdapter > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStyleDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStyleDescriptionItemProvider.java >index 9d0d7e8..d1de69f 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStyleDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStyleDescriptionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.style.LabelBorderStyleDescription; > import org.eclipse.sirius.viewpoint.description.style.StylePackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -195,7 +195,7 @@ public class LabelBorderStyleDescriptionItemProvider extends ItemProviderAdapter > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStylesItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStylesItemProvider.java >index ab987f3..e970709 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStylesItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/LabelBorderStylesItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.style.LabelBorderStyles; > import org.eclipse.sirius.viewpoint.description.style.StyleFactory; > import org.eclipse.sirius.viewpoint.description.style.StylePackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -162,7 +162,7 @@ public class LabelBorderStylesItemProvider extends ItemProviderAdapter implement > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/StyleItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/StyleItemProviderAdapterFactory.java >index a662aca..b90dbc3 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/StyleItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/StyleItemProviderAdapterFactory.java >@@ -13,14 +13,19 @@ package org.eclipse.sirius.viewpoint.description.style.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.edit.domain.EditingDomain; > import org.eclipse.emf.edit.provider.ChangeNotifier; >+import org.eclipse.emf.edit.provider.ChildCreationExtenderManager; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +33,9 @@ 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.sirius.viewpoint.description.style.StylePackage; > import org.eclipse.sirius.viewpoint.description.style.util.StyleAdapterFactory; >+import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -40,7 +47,7 @@ import org.eclipse.sirius.viewpoint.description.style.util.StyleAdapterFactory; > * > * @generated > */ >-public class StyleItemProviderAdapterFactory extends StyleAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { >+public class StyleItemProviderAdapterFactory extends StyleAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender { > /** > * This keeps track of the root adapter factory that delegates to this > * adapter factory. <!-- begin-user-doc --> <!-- end-user-doc --> >@@ -59,6 +66,14 @@ public class StyleItemProviderAdapterFactory extends StyleAdapterFactory impleme > protected IChangeNotifier changeNotifier = new ChangeNotifier(); > > /** >+ * This helps manage the child creation extenders. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(SiriusEditPlugin.INSTANCE, StylePackage.eNS_URI); >+ >+ /** > * This keeps track of all the supported types checked by > * {@link #isFactoryForType isFactoryForType}. <!-- begin-user-doc --> <!-- > * end-user-doc --> >@@ -266,6 +281,33 @@ public class StyleItemProviderAdapterFactory extends StyleAdapterFactory impleme > } > > /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public List<IChildCreationExtender> getChildCreationExtenders() { >+ return childCreationExtenderManager.getChildCreationExtenders(); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return childCreationExtenderManager; >+ } >+ >+ /** > * This adds a listener. <!-- begin-user-doc --> <!-- end-user-doc --> > * > * @generated >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/TooltipStyleDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/TooltipStyleDescriptionItemProvider.java >index cb6c0e3..a38d644 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/TooltipStyleDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/style/provider/TooltipStyleDescriptionItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.style.StylePackage; > import org.eclipse.sirius.viewpoint.description.style.TooltipStyleDescription; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -142,7 +142,7 @@ public class TooltipStyleDescriptionItemProvider extends ItemProviderAdapter imp > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractToolDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractToolDescriptionItemProvider.java >index 56cba2d..fe65620 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractToolDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractToolDescriptionItemProvider.java >@@ -16,7 +16,6 @@ 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; >@@ -32,7 +31,6 @@ import org.eclipse.sirius.viewpoint.description.provider.DocumentedElementItemPr > import org.eclipse.sirius.viewpoint.description.tool.AbstractToolDescription; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -207,15 +205,4 @@ public class AbstractToolDescriptionItemProvider extends DocumentedElementItemPr > newChildDescriptors.add(createChildParameter(ToolPackage.Literals.ABSTRACT_TOOL_DESCRIPTION__FILTERS, ToolFactory.eINSTANCE.createToolFilterDescription())); > } > >- /** >- * Return the resource locator for this item provider's resources. <!-- >- * begin-user-doc --> <!-- end-user-doc --> >- * >- * @generated >- */ >- @Override >- public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >- } >- > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractVariableItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractVariableItemProvider.java >index d12c8d1..76003ff 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractVariableItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/AbstractVariableItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.AbstractVariable; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -130,7 +130,7 @@ public class AbstractVariableItemProvider extends ItemProviderAdapter implements > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/EditMaskVariablesItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/EditMaskVariablesItemProvider.java >index 4b2e660..616b810 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/EditMaskVariablesItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/EditMaskVariablesItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.EditMaskVariables; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -141,7 +141,7 @@ public class EditMaskVariablesItemProvider extends ItemProviderAdapter implement > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ExternalJavaActionParameterItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ExternalJavaActionParameterItemProvider.java >index 79883c0..03f7ad7 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ExternalJavaActionParameterItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ExternalJavaActionParameterItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.ExternalJavaActionParameter; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -155,7 +155,7 @@ public class ExternalJavaActionParameterItemProvider extends ItemProviderAdapter > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/FeatureChangeListenerItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/FeatureChangeListenerItemProvider.java >index 5466720..9844e61 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/FeatureChangeListenerItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/FeatureChangeListenerItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.FeatureChangeListener; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -155,7 +155,7 @@ public class FeatureChangeListenerItemProvider extends ItemProviderAdapter imple > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitEdgeCreationOperationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitEdgeCreationOperationItemProvider.java >index 0bd8444..a2d15ed 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitEdgeCreationOperationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitEdgeCreationOperationItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.InitEdgeCreationOperation; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -186,7 +186,7 @@ public class InitEdgeCreationOperationItemProvider extends ItemProviderAdapter i > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialContainerDropOperationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialContainerDropOperationItemProvider.java >index 7ada3ce..8a5b3a9 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialContainerDropOperationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialContainerDropOperationItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.InitialContainerDropOperation; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -186,7 +186,7 @@ public class InitialContainerDropOperationItemProvider extends ItemProviderAdapt > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialNodeCreationOperationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialNodeCreationOperationItemProvider.java >index a296f83..09955a6 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialNodeCreationOperationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialNodeCreationOperationItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.InitialNodeCreationOperation; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -186,7 +186,7 @@ public class InitialNodeCreationOperationItemProvider extends ItemProviderAdapte > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialOperationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialOperationItemProvider.java >index e5c1a73..10ab290 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialOperationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/InitialOperationItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.InitialOperation; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -186,7 +186,7 @@ public class InitialOperationItemProvider extends ItemProviderAdapter implements > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/MenuItemDescriptionReferenceItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/MenuItemDescriptionReferenceItemProvider.java >index ed5a32d..eee5b46 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/MenuItemDescriptionReferenceItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/MenuItemDescriptionReferenceItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -26,7 +27,6 @@ import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; > import org.eclipse.emf.edit.provider.ITreeItemContentProvider; > import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -132,7 +132,7 @@ public class MenuItemDescriptionReferenceItemProvider extends ItemProviderAdapte > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ModelOperationItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ModelOperationItemProvider.java >index d503973..246092b 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ModelOperationItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ModelOperationItemProvider.java >@@ -17,6 +17,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -24,7 +25,6 @@ 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.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -105,7 +105,7 @@ public class ModelOperationItemProvider extends ItemProviderAdapter implements I > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/SwitchChildItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/SwitchChildItemProvider.java >index b811cbb..e7e4c76 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/SwitchChildItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/SwitchChildItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -32,7 +33,6 @@ import org.eclipse.sirius.viewpoint.description.tool.Switch; > import org.eclipse.sirius.viewpoint.description.tool.SwitchChild; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -221,7 +221,7 @@ public class SwitchChildItemProvider extends ItemProviderAdapter implements IEdi > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolFilterDescriptionItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolFilterDescriptionItemProvider.java >index 826cc36..a631504 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolFilterDescriptionItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolFilterDescriptionItemProvider.java >@@ -19,6 +19,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -31,7 +32,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolFilterDescription; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -195,7 +195,7 @@ public class ToolFilterDescriptionItemProvider extends ItemProviderAdapter imple > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolItemProviderAdapterFactory.java >index cabfcc6..d33686d 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/ToolItemProviderAdapterFactory.java >@@ -13,14 +13,19 @@ package org.eclipse.sirius.viewpoint.description.tool.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.edit.domain.EditingDomain; > import org.eclipse.emf.edit.provider.ChangeNotifier; >+import org.eclipse.emf.edit.provider.ChildCreationExtenderManager; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +33,9 @@ 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.sirius.viewpoint.description.tool.ToolPackage; > import org.eclipse.sirius.viewpoint.description.tool.util.ToolAdapterFactory; >+import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -40,7 +47,7 @@ import org.eclipse.sirius.viewpoint.description.tool.util.ToolAdapterFactory; > * > * @generated > */ >-public class ToolItemProviderAdapterFactory extends ToolAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { >+public class ToolItemProviderAdapterFactory extends ToolAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender { > /** > * This keeps track of the root adapter factory that delegates to this > * adapter factory. <!-- begin-user-doc --> <!-- end-user-doc --> >@@ -59,6 +66,14 @@ public class ToolItemProviderAdapterFactory extends ToolAdapterFactory implement > protected IChangeNotifier changeNotifier = new ChangeNotifier(); > > /** >+ * This helps manage the child creation extenders. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(SiriusEditPlugin.INSTANCE, ToolPackage.eNS_URI); >+ >+ /** > * This keeps track of all the supported types checked by > * {@link #isFactoryForType isFactoryForType}. <!-- begin-user-doc --> <!-- > * end-user-doc --> >@@ -1165,6 +1180,33 @@ public class ToolItemProviderAdapterFactory extends ToolAdapterFactory implement > } > > /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public List<IChildCreationExtender> getChildCreationExtenders() { >+ return childCreationExtenderManager.getChildCreationExtenders(); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return childCreationExtenderManager; >+ } >+ >+ /** > * This adds a listener. <!-- begin-user-doc --> <!-- end-user-doc --> > * > * @generated >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/VariableContainerItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/VariableContainerItemProvider.java >index a08d868..5933330 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/VariableContainerItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/tool/provider/VariableContainerItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.tool.ToolPackage; > import org.eclipse.sirius.viewpoint.description.tool.VariableContainer; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -153,7 +153,7 @@ public class VariableContainerItemProvider extends ItemProviderAdapter implement > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/RuleAuditItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/RuleAuditItemProvider.java >index c39b8a1..a7b434a 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/RuleAuditItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/RuleAuditItemProvider.java >@@ -18,6 +18,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -29,7 +30,6 @@ import org.eclipse.emf.edit.provider.ItemProviderAdapter; > import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.validation.RuleAudit; > import org.eclipse.sirius.viewpoint.description.validation.ValidationPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -139,7 +139,7 @@ public class RuleAuditItemProvider extends ItemProviderAdapter implements IEditi > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationFixItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationFixItemProvider.java >index fa47682..30f1b2a 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationFixItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationFixItemProvider.java >@@ -19,6 +19,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -31,7 +32,6 @@ import org.eclipse.emf.edit.provider.ViewerNotification; > import org.eclipse.sirius.viewpoint.description.tool.ToolFactory; > import org.eclipse.sirius.viewpoint.description.validation.ValidationFix; > import org.eclipse.sirius.viewpoint.description.validation.ValidationPackage; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -181,7 +181,7 @@ public class ValidationFixItemProvider extends ItemProviderAdapter implements IE > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationItemProviderAdapterFactory.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationItemProviderAdapterFactory.java >index 5897114..11d0f4d 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationItemProviderAdapterFactory.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationItemProviderAdapterFactory.java >@@ -13,14 +13,19 @@ package org.eclipse.sirius.viewpoint.description.validation.provider; > > import java.util.ArrayList; > import java.util.Collection; >+import java.util.List; > > 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.common.util.ResourceLocator; >+import org.eclipse.emf.edit.domain.EditingDomain; > import org.eclipse.emf.edit.provider.ChangeNotifier; >+import org.eclipse.emf.edit.provider.ChildCreationExtenderManager; > 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IDisposable; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; >@@ -28,7 +33,9 @@ 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.sirius.viewpoint.description.validation.ValidationPackage; > import org.eclipse.sirius.viewpoint.description.validation.util.ValidationAdapterFactory; >+import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the factory that is used to provide the interfaces needed to support >@@ -40,7 +47,7 @@ import org.eclipse.sirius.viewpoint.description.validation.util.ValidationAdapte > * > * @generated > */ >-public class ValidationItemProviderAdapterFactory extends ValidationAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable { >+public class ValidationItemProviderAdapterFactory extends ValidationAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender { > /** > * This keeps track of the root adapter factory that delegates to this > * adapter factory. <!-- begin-user-doc --> <!-- end-user-doc --> >@@ -59,6 +66,14 @@ public class ValidationItemProviderAdapterFactory extends ValidationAdapterFacto > protected IChangeNotifier changeNotifier = new ChangeNotifier(); > > /** >+ * This helps manage the child creation extenders. <!-- begin-user-doc --> >+ * <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(SiriusEditPlugin.INSTANCE, ValidationPackage.eNS_URI); >+ >+ /** > * This keeps track of all the supported types checked by > * {@link #isFactoryForType isFactoryForType}. <!-- begin-user-doc --> <!-- > * end-user-doc --> >@@ -265,6 +280,33 @@ public class ValidationItemProviderAdapterFactory extends ValidationAdapterFacto > } > > /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public List<IChildCreationExtender> getChildCreationExtenders() { >+ return childCreationExtenderManager.getChildCreationExtenders(); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) { >+ return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain); >+ } >+ >+ /** >+ * <!-- begin-user-doc --> <!-- end-user-doc --> >+ * >+ * @generated >+ */ >+ public ResourceLocator getResourceLocator() { >+ return childCreationExtenderManager; >+ } >+ >+ /** > * This adds a listener. <!-- begin-user-doc --> <!-- end-user-doc --> > * > * @generated >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationRuleItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationRuleItemProvider.java >index a651acc..ba6f93c 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationRuleItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationRuleItemProvider.java >@@ -19,6 +19,7 @@ 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.IChildCreationExtender; > import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; > import org.eclipse.emf.edit.provider.IItemLabelProvider; > import org.eclipse.emf.edit.provider.IItemPropertyDescriptor; >@@ -32,7 +33,6 @@ import org.eclipse.sirius.viewpoint.description.validation.ERROR_LEVEL; > import org.eclipse.sirius.viewpoint.description.validation.ValidationFactory; > import org.eclipse.sirius.viewpoint.description.validation.ValidationPackage; > import org.eclipse.sirius.viewpoint.description.validation.ValidationRule; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -190,7 +190,7 @@ public class ValidationRuleItemProvider extends ItemProviderAdapter implements I > */ > @Override > public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >+ return ((IChildCreationExtender) adapterFactory).getResourceLocator(); > } > > } >diff --git a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationSetItemProvider.java b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationSetItemProvider.java >index 89d2ee7..4a7d179 100644 >--- a/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationSetItemProvider.java >+++ b/plugins/org.eclipse.sirius.ui/src-gen/org/eclipse/sirius/viewpoint/description/validation/provider/ValidationSetItemProvider.java >@@ -16,7 +16,6 @@ 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; >@@ -31,7 +30,6 @@ import org.eclipse.sirius.viewpoint.description.provider.DocumentedElementItemPr > import org.eclipse.sirius.viewpoint.description.validation.ValidationFactory; > import org.eclipse.sirius.viewpoint.description.validation.ValidationPackage; > import org.eclipse.sirius.viewpoint.description.validation.ValidationSet; >-import org.eclipse.sirius.viewpoint.provider.SiriusEditPlugin; > > /** > * This is the item provider adapter for a >@@ -201,15 +199,4 @@ public class ValidationSetItemProvider extends DocumentedElementItemProvider imp > newChildDescriptors.add(createChildParameter(ValidationPackage.Literals.VALIDATION_SET__OWNED_RULES, ValidationFactory.eINSTANCE.createViewValidationRule())); > } > >- /** >- * Return the resource locator for this item provider's resources. <!-- >- * begin-user-doc --> <!-- end-user-doc --> >- * >- * @generated >- */ >- @Override >- public ResourceLocator getResourceLocator() { >- return SiriusEditPlugin.INSTANCE; >- } >- > } >diff --git a/plugins/org.eclipse.sirius/model/viewpoint.genmodel b/plugins/org.eclipse.sirius/model/viewpoint.genmodel >index 39e6dfc..ef68a78 100644 >--- a/plugins/org.eclipse.sirius/model/viewpoint.genmodel >+++ b/plugins/org.eclipse.sirius/model/viewpoint.genmodel >@@ -148,7 +148,8 @@ > <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EAttribute viewpoint.ecore#//Customizable/customFeatures"/> > </genClasses> > <nestedGenPackages prefix="Description" basePackage="org.eclipse.sirius.viewpoint" >- resource="XMI" disposableProviderFactory="true" ecorePackage="viewpoint.ecore#//description"> >+ resource="XMI" disposableProviderFactory="true" extensibleProviderFactory="true" >+ ecorePackage="viewpoint.ecore#//description"> > <genEnums ecoreEnum="viewpoint.ecore#//description/NavigationTargetType"> > <genEnumLiterals ecoreEnumLiteral="viewpoint.ecore#//description/NavigationTargetType/model"/> > <genEnumLiterals ecoreEnumLiteral="viewpoint.ecore#//description/NavigationTargetType/file"/> >@@ -417,7 +418,7 @@ > <genFeatures createChild="false" ecoreFeature="ecore:EAttribute viewpoint.ecore#//description/DAnnotationEntry/details"/> > </genClasses> > <nestedGenPackages prefix="Style" basePackage="org.eclipse.sirius.viewpoint.description" >- disposableProviderFactory="true" ecorePackage="viewpoint.ecore#//description/style"> >+ disposableProviderFactory="true" extensibleProviderFactory="true" ecorePackage="viewpoint.ecore#//description/style"> > <genClasses image="false" ecoreClass="viewpoint.ecore#//description/style/StyleDescription"/> > <genClasses ecoreClass="viewpoint.ecore#//description/style/BasicLabelStyleDescription"> > <genFeatures createChild="false" propertyCategory="Label" ecoreFeature="ecore:EAttribute viewpoint.ecore#//description/style/BasicLabelStyleDescription/labelSize"/> >@@ -448,7 +449,7 @@ > </genClasses> > </nestedGenPackages> > <nestedGenPackages prefix="Tool" basePackage="org.eclipse.sirius.viewpoint.description" >- disposableProviderFactory="true" ecorePackage="viewpoint.ecore#//description/tool"> >+ disposableProviderFactory="true" extensibleProviderFactory="true" ecorePackage="viewpoint.ecore#//description/tool"> > <genEnums ecoreEnum="viewpoint.ecore#//description/tool/DragSource"> > <genEnumLiterals ecoreEnumLiteral="viewpoint.ecore#//description/tool/DragSource/DIAGRAM"/> > <genEnumLiterals ecoreEnumLiteral="viewpoint.ecore#//description/tool/DragSource/PROJECT_EXPLORER"/> >@@ -678,7 +679,7 @@ > </genClasses> > </nestedGenPackages> > <nestedGenPackages prefix="Validation" basePackage="org.eclipse.sirius.viewpoint.description" >- disposableProviderFactory="true" ecorePackage="viewpoint.ecore#//description/validation"> >+ disposableProviderFactory="true" extensibleProviderFactory="true" ecorePackage="viewpoint.ecore#//description/validation"> > <genEnums ecoreEnum="viewpoint.ecore#//description/validation/ERROR_LEVEL"> > <genEnumLiterals ecoreEnumLiteral="viewpoint.ecore#//description/validation/ERROR_LEVEL/INFO"/> > <genEnumLiterals ecoreEnumLiteral="viewpoint.ecore#//description/validation/ERROR_LEVEL/WARNING"/> >@@ -721,7 +722,7 @@ > </genClasses> > </nestedGenPackages> > <nestedGenPackages prefix="Audit" basePackage="org.eclipse.sirius.viewpoint.description" >- disposableProviderFactory="true" ecorePackage="viewpoint.ecore#//description/audit"> >+ disposableProviderFactory="true" extensibleProviderFactory="true" ecorePackage="viewpoint.ecore#//description/audit"> > <genClasses image="false" ecoreClass="viewpoint.ecore#//description/audit/InformationSection"> > <genOperations ecoreOperation="viewpoint.ecore#//description/audit/InformationSection/getContent"> > <genParameters ecoreParameter="viewpoint.ecore#//description/audit/InformationSection/getContent/eObj"/>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 432986
:
242317
|
242318
|
242319
| 242320 |
242321
|
242476
|
242477
|
242478
|
242493
|
242494
|
242495
|
242496
|
242497