diff options
Diffstat (limited to 'plugins/org.eclipse.uml2.uml.edit/src/org/eclipse/uml2/uml/edit/provider/PropertyItemProvider.java')
-rw-r--r-- | plugins/org.eclipse.uml2.uml.edit/src/org/eclipse/uml2/uml/edit/provider/PropertyItemProvider.java | 857 |
1 files changed, 857 insertions, 0 deletions
diff --git a/plugins/org.eclipse.uml2.uml.edit/src/org/eclipse/uml2/uml/edit/provider/PropertyItemProvider.java b/plugins/org.eclipse.uml2.uml.edit/src/org/eclipse/uml2/uml/edit/provider/PropertyItemProvider.java new file mode 100644 index 00000000..37295cd2 --- /dev/null +++ b/plugins/org.eclipse.uml2.uml.edit/src/org/eclipse/uml2/uml/edit/provider/PropertyItemProvider.java @@ -0,0 +1,857 @@ +/* + * Copyright (c) 2005 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM - initial API and implementation + * + * $Id: PropertyItemProvider.java,v 1.1 2005/11/14 22:11:37 khussey Exp $ + */ +package org.eclipse.uml2.uml.edit.provider; + +import java.util.Collection; +import java.util.List; + +import org.eclipse.emf.common.command.Command; + +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.EObject; +import org.eclipse.emf.ecore.EStructuralFeature; + +import org.eclipse.emf.edit.domain.EditingDomain; + +import org.eclipse.emf.edit.provider.ComposeableAdapterFactory; +import org.eclipse.emf.edit.provider.IEditingDomainItemProvider; +import org.eclipse.emf.edit.provider.IItemLabelProvider; +import org.eclipse.emf.edit.provider.IItemPropertySource; +import org.eclipse.emf.edit.provider.IStructuredItemContentProvider; +import org.eclipse.emf.edit.provider.ITreeItemContentProvider; +import org.eclipse.emf.edit.provider.ItemPropertyDescriptor; +import org.eclipse.emf.edit.provider.ViewerNotification; + +import org.eclipse.uml2.common.edit.command.SubsetAddCommand; +import org.eclipse.uml2.common.edit.command.SubsetReplaceCommand; +import org.eclipse.uml2.common.edit.command.SubsetSetCommand; +import org.eclipse.uml2.common.edit.command.SupersetRemoveCommand; +import org.eclipse.uml2.common.edit.command.SupersetReplaceCommand; +import org.eclipse.uml2.common.edit.command.SupersetSetCommand; + +import org.eclipse.uml2.uml.Property; +import org.eclipse.uml2.uml.UMLFactory; +import org.eclipse.uml2.uml.UMLPackage; + +import org.eclipse.uml2.uml.edit.UMLEditPlugin; + +/** + * This is the item provider adapter for a {@link org.eclipse.uml2.uml.Property} object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ +public class PropertyItemProvider + extends StructuralFeatureItemProvider + implements IEditingDomainItemProvider, IStructuredItemContentProvider, + ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource { + + /** + * This constructs an instance from a factory and a notifier. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public PropertyItemProvider(AdapterFactory adapterFactory) { + super(adapterFactory); + } + + /** + * This returns the property descriptors for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public List getPropertyDescriptors(Object object) { + if (itemPropertyDescriptors == null) { + super.getPropertyDescriptors(object); + + addTemplateParameterPropertyDescriptor(object); + addOwningTemplateParameterPropertyDescriptor(object); + addEndPropertyDescriptor(object); + addDeploymentPropertyDescriptor(object); + addDeployedElementPropertyDescriptor(object); + addTemplateBindingPropertyDescriptor(object); + addOwnedTemplateSignaturePropertyDescriptor(object); + addDatatypePropertyDescriptor(object); + addIsDerivedPropertyDescriptor(object); + addIsDerivedUnionPropertyDescriptor(object); + addDefaultPropertyDescriptor(object); + addAggregationPropertyDescriptor(object); + addIsCompositePropertyDescriptor(object); + addClass_PropertyDescriptor(object); + addRedefinedPropertyPropertyDescriptor(object); + addOwningAssociationPropertyDescriptor(object); + addAssociationPropertyDescriptor(object); + addDefaultValuePropertyDescriptor(object); + addOppositePropertyDescriptor(object); + addSubsettedPropertyPropertyDescriptor(object); + addQualifierPropertyDescriptor(object); + addAssociationEndPropertyDescriptor(object); + } + return itemPropertyDescriptors; + } + + /** + * This adds a property descriptor for the Template Parameter feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTemplateParameterPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_ParameterableElement_templateParameter_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_ParameterableElement_templateParameter_feature", "_UI_ParameterableElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE + .getParameterableElement_TemplateParameter(), true, null, + null, null)); + } + + /** + * This adds a property descriptor for the Owning Template Parameter feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addOwningTemplateParameterPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_ParameterableElement_owningTemplateParameter_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_ParameterableElement_owningTemplateParameter_feature", "_UI_ParameterableElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE + .getParameterableElement_OwningTemplateParameter(), true, + null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the End feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addEndPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_ConnectableElement_end_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_ConnectableElement_end_feature", "_UI_ConnectableElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getConnectableElement_End(), true, null, + null, null)); + } + + /** + * This adds a property descriptor for the Deployment feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDeploymentPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_DeploymentTarget_deployment_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_DeploymentTarget_deployment_feature", "_UI_DeploymentTarget_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getDeploymentTarget_Deployment(), true, + null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Deployed Element feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDeployedElementPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_DeploymentTarget_deployedElement_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_DeploymentTarget_deployedElement_feature", "_UI_DeploymentTarget_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getDeploymentTarget_DeployedElement(), + false, null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Template Binding feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addTemplateBindingPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_TemplateableElement_templateBinding_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_TemplateableElement_templateBinding_feature", "_UI_TemplateableElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getTemplateableElement_TemplateBinding(), + true, null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Owned Template Signature feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addOwnedTemplateSignaturePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_TemplateableElement_ownedTemplateSignature_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_TemplateableElement_ownedTemplateSignature_feature", "_UI_TemplateableElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE + .getTemplateableElement_OwnedTemplateSignature(), true, + null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Datatype feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDatatypePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_datatype_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_datatype_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Datatype(), true, null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Is Derived feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsDerivedPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_isDerived_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_isDerived_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_IsDerived(), true, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Is Derived Union feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsDerivedUnionPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_isDerivedUnion_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_isDerivedUnion_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_IsDerivedUnion(), true, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Default feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDefaultPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_default_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_default_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Default(), true, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Aggregation feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addAggregationPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_aggregation_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_aggregation_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Aggregation(), true, + ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null)); + } + + /** + * This adds a property descriptor for the Is Composite feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addIsCompositePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_isComposite_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_isComposite_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_IsComposite(), true, + ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Class feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addClass_PropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_class__feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_class__feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Class_(), false, null, null, + null)); + } + + /** + * This adds a property descriptor for the Redefined Property feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addRedefinedPropertyPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_redefinedProperty_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_redefinedProperty_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_RedefinedProperty(), true, + null, null, null)); + } + + /** + * This adds a property descriptor for the Owning Association feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addOwningAssociationPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_owningAssociation_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_owningAssociation_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_OwningAssociation(), true, + null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Association feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addAssociationPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_association_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_association_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Association(), true, null, + null, null)); + } + + /** + * This adds a property descriptor for the Default Value feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addDefaultValuePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_defaultValue_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_defaultValue_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_DefaultValue(), true, null, + null, new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Opposite feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addOppositePropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_opposite_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_opposite_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Opposite(), true, null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Subsetted Property feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addSubsettedPropertyPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_subsettedProperty_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_subsettedProperty_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_SubsettedProperty(), true, + null, null, null)); + } + + /** + * This adds a property descriptor for the Qualifier feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addQualifierPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_qualifier_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_qualifier_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_Qualifier(), true, null, null, + new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This adds a property descriptor for the Association End feature. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void addAssociationEndPropertyDescriptor(Object object) { + itemPropertyDescriptors + .add(createItemPropertyDescriptor( + ((ComposeableAdapterFactory) adapterFactory) + .getRootAdapterFactory(), + getResourceLocator(), + getString("_UI_Property_associationEnd_feature"), //$NON-NLS-1$ + getString( + "_UI_PropertyDescriptor_description", "_UI_Property_associationEnd_feature", "_UI_Property_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + UMLPackage.eINSTANCE.getProperty_AssociationEnd(), true, null, + null, new String[]{"org.eclipse.ui.views.properties.expert" //$NON-NLS-1$ + })); + } + + /** + * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an + * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or + * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Collection getChildrenFeatures(Object object) { + if (childrenFeatures == null) { + super.getChildrenFeatures(object); + childrenFeatures.add(UMLPackage.eINSTANCE + .getDeploymentTarget_Deployment()); + childrenFeatures.add(UMLPackage.eINSTANCE + .getTemplateableElement_TemplateBinding()); + childrenFeatures.add(UMLPackage.eINSTANCE + .getTemplateableElement_OwnedTemplateSignature()); + childrenFeatures.add(UMLPackage.eINSTANCE + .getProperty_DefaultValue()); + childrenFeatures.add(UMLPackage.eINSTANCE.getProperty_Qualifier()); + } + return childrenFeatures; + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected EStructuralFeature getChildFeature(Object object, Object child) { + // Check the type of the specified child object and return the proper feature to use for + // adding (see {@link AddCommand}) it as a child. + + return super.getChildFeature(object, child); + } + + /** + * This returns Property.gif. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public Object getImage(Object object) { + return getResourceLocator().getImage("full/obj16/Property"); //$NON-NLS-1$ + } + + /** + * This returns the label text for the adapted class. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getText(Object object) { + String label = ((Property) object).getName(); + return label == null || label.length() == 0 + ? getString("_UI_Property_type") : //$NON-NLS-1$ + getString("_UI_Property_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$ + } + + /** + * This handles model notifications by calling {@link #updateChildren} to update any cached + * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public void notifyChanged(Notification notification) { + updateChildren(notification); + + switch (notification.getFeatureID(Property.class)) { + case UMLPackage.PROPERTY__IS_DERIVED : + case UMLPackage.PROPERTY__IS_DERIVED_UNION : + case UMLPackage.PROPERTY__DEFAULT : + case UMLPackage.PROPERTY__AGGREGATION : + case UMLPackage.PROPERTY__IS_COMPOSITE : + fireNotifyChanged(new ViewerNotification(notification, + notification.getNotifier(), false, true)); + return; + case UMLPackage.PROPERTY__DEPLOYMENT : + case UMLPackage.PROPERTY__TEMPLATE_BINDING : + case UMLPackage.PROPERTY__OWNED_TEMPLATE_SIGNATURE : + case UMLPackage.PROPERTY__DEFAULT_VALUE : + case UMLPackage.PROPERTY__QUALIFIER : + fireNotifyChanged(new ViewerNotification(notification, + notification.getNotifier(), true, false)); + return; + } + super.notifyChanged(notification); + } + + /** + * This adds to the collection of {@link org.eclipse.emf.edit.command.CommandParameter}s + * describing all of the children that can be created under this object. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected void collectNewChildDescriptors(Collection newChildDescriptors, + Object object) { + super.collectNewChildDescriptors(newChildDescriptors, object); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getDeploymentTarget_Deployment(), UMLFactory.eINSTANCE + .createDeployment())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getTemplateableElement_TemplateBinding(), UMLFactory.eINSTANCE + .createTemplateBinding())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getTemplateableElement_OwnedTemplateSignature(), + UMLFactory.eINSTANCE.createTemplateSignature())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getTemplateableElement_OwnedTemplateSignature(), + UMLFactory.eINSTANCE.createRedefinableTemplateSignature())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createOpaqueExpression())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createExpression())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createStringExpression())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createLiteralInteger())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createLiteralString())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createLiteralBoolean())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createLiteralNull())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createInstanceValue())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createLiteralUnlimitedNatural())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createTimeExpression())); + + newChildDescriptors + .add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createDuration())); + + newChildDescriptors + .add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createInterval())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createDurationInterval())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_DefaultValue(), UMLFactory.eINSTANCE + .createTimeInterval())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_Qualifier(), UMLFactory.eINSTANCE.createProperty())); + + newChildDescriptors.add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_Qualifier(), UMLFactory.eINSTANCE.createPort())); + + newChildDescriptors + .add(createChildParameter(UMLPackage.eINSTANCE + .getProperty_Qualifier(), UMLFactory.eINSTANCE + .createExtensionEnd())); + } + + /** + * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public String getCreateChildText(Object owner, Object feature, + Object child, Collection selection) { + Object childFeature = feature; + Object childObject = child; + + boolean qualify = childFeature == UMLPackage.eINSTANCE + .getNamedElement_NameExpression() + || childFeature == UMLPackage.eINSTANCE + .getMultiplicityElement_UpperValue() + || childFeature == UMLPackage.eINSTANCE + .getMultiplicityElement_LowerValue() + || childFeature == UMLPackage.eINSTANCE.getProperty_DefaultValue(); + + if (qualify) { + return getString("_UI_CreateChild_text2", //$NON-NLS-1$ + new Object[]{getTypeText(childObject), + getFeatureText(childFeature), getTypeText(owner)}); + } + return super.getCreateChildText(owner, feature, child, selection); + } + + /** + * Return the resource locator for this item provider's resources. + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + public ResourceLocator getResourceLocator() { + return UMLEditPlugin.INSTANCE; + } + + /** + * @see org.eclipse.emf.edit.provider.ItemProviderAdapter#createAddCommand(org.eclipse.emf.edit.domain.EditingDomain, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EStructuralFeature, java.util.Collection, int) + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Command createAddCommand(EditingDomain domain, EObject owner, + EStructuralFeature feature, Collection collection, int index) { + if (feature == UMLPackage.eINSTANCE.getDeploymentTarget_Deployment()) { + return new SubsetAddCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getNamedElement_ClientDependency()}, collection, index); + } + return super + .createAddCommand(domain, owner, feature, collection, index); + } + + /** + * @see org.eclipse.emf.edit.provider.ItemProviderAdapter#createRemoveCommand(org.eclipse.emf.edit.domain.EditingDomain, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EStructuralFeature, java.util.Collection) + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Command createRemoveCommand(EditingDomain domain, EObject owner, + EStructuralFeature feature, Collection collection) { + if (feature == UMLPackage.eINSTANCE.getNamedElement_ClientDependency()) { + return new SupersetRemoveCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getDeploymentTarget_Deployment()}, collection); + } + return super.createRemoveCommand(domain, owner, feature, collection); + } + + /** + * @see org.eclipse.emf.edit.provider.ItemProviderAdapter#createReplaceCommand(org.eclipse.emf.edit.domain.EditingDomain, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EStructuralFeature, org.eclipse.emf.ecore.EObject, java.util.Collection) + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Command createReplaceCommand(EditingDomain domain, EObject owner, + EStructuralFeature feature, EObject value, Collection collection) { + if (feature == UMLPackage.eINSTANCE.getDeploymentTarget_Deployment()) { + return new SubsetReplaceCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getNamedElement_ClientDependency()}, value, collection); + } + if (feature == UMLPackage.eINSTANCE.getNamedElement_ClientDependency()) { + return new SupersetReplaceCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getDeploymentTarget_Deployment()}, value, collection); + } + return super.createReplaceCommand(domain, owner, feature, value, + collection); + } + + /** + * @see org.eclipse.emf.edit.provider.ItemProviderAdapter#createSetCommand(org.eclipse.emf.edit.domain.EditingDomain, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.EStructuralFeature, java.lang.Object) + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated + */ + protected Command createSetCommand(EditingDomain domain, EObject owner, + EStructuralFeature feature, Object value) { + if (feature == UMLPackage.eINSTANCE + .getParameterableElement_OwningTemplateParameter()) { + return new SubsetSetCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getParameterableElement_TemplateParameter()}, value); + } + if (feature == UMLPackage.eINSTANCE.getProperty_OwningAssociation()) { + return new SubsetSetCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getProperty_Association()}, value); + } + if (feature == UMLPackage.eINSTANCE.getProperty_Association()) { + return new SupersetSetCommand(domain, owner, feature, + new EStructuralFeature[]{UMLPackage.eINSTANCE + .getProperty_OwningAssociation()}, value); + } + return super.createSetCommand(domain, owner, feature, value); + } + +} |