| /**
|
| * Copyright (c) 2009, 2019 Mia-Software and others.
|
| * All rights reserved. This program and the accompanying materials
|
| * are made available under the terms of the Eclipse Public License v2.0
|
| * which accompanies this distribution, and is available at
|
| * http://www.eclipse.org/legal/epl-v20.html
|
| *
|
| * Contributors:
|
| * Frederic Madiot (Mia-Software) - meta-model design
|
| * Gregoire DUPE (Mia-Software) - design and implementation
|
| *
|
| *
|
| * $Id$
|
| */ |
| package org.eclipse.modisco.infra.facet.edit.provider;
|
|
|
| import java.util.ArrayList;
|
| import java.util.Collection;
|
| import java.util.List;
|
|
|
| import org.eclipse.emf.common.notify.AdapterFactory;
|
| import org.eclipse.emf.common.notify.Notification;
|
| import org.eclipse.emf.common.util.ResourceLocator;
|
| import org.eclipse.emf.ecore.EClass;
|
| import org.eclipse.emf.ecore.EStructuralFeature;
|
| import org.eclipse.emf.ecore.EcoreFactory;
|
| import org.eclipse.emf.ecore.EcorePackage;
|
| import org.eclipse.emf.ecore.provider.EClassItemProvider;
|
| import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
|
| import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
|
| import org.eclipse.emf.edit.provider.IItemLabelProvider;
|
| import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
|
| import org.eclipse.emf.edit.provider.IItemPropertySource;
|
| import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
|
| import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
|
| import org.eclipse.modisco.infra.facet.Facet;
|
| import org.eclipse.modisco.infra.facet.FacetFactory;
|
| import org.eclipse.modisco.infra.facet.FacetPackage;
|
|
|
| /**
|
| * This is the item provider adapter for a {@link org.eclipse.modisco.infra.facet.Facet} object.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated
|
| * @deprecated Replaced by EMF Facet
|
| */
|
| @Deprecated
|
| public class FacetItemProvider extends EClassItemProvider implements
|
| IEditingDomainItemProvider, IStructuredItemContentProvider,
|
| ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
|
| /**
|
| * This constructs an instance from a factory and a notifier.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated
|
| */
|
| public FacetItemProvider(AdapterFactory adapterFactory) {
|
| super(adapterFactory);
|
| }
|
|
|
| /**
|
| * This constructs an instance from a factory and a notifier.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated NOT
|
| */
|
| @Override
|
| public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
|
| if (itemPropertyDescriptors == null) {
|
| itemPropertyDescriptors = new ArrayList<IItemPropertyDescriptor>();
|
| addNamePropertyDescriptor(object);
|
| addESuperTypesPropertyDescriptor(object);
|
| addConditionQueryPropertyDescriptor(object);
|
| }
|
| return itemPropertyDescriptors;
|
| }
|
|
|
| /**
|
| * This adds a property descriptor for the Condition Query feature.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated
|
| */
|
| protected void addConditionQueryPropertyDescriptor(Object object) {
|
| itemPropertyDescriptors.add
|
| (createItemPropertyDescriptor
|
| (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
|
| getResourceLocator(),
|
| getString("_UI_Facet_conditionQuery_feature"),
|
| getString("_UI_PropertyDescriptor_description", "_UI_Facet_conditionQuery_feature", "_UI_Facet_type"),
|
| FacetPackage.Literals.FACET__CONDITION_QUERY,
|
| true,
|
| false,
|
| true,
|
| null,
|
| null,
|
| null));
|
| }
|
|
|
| /**
|
| * This adds a property descriptor for the Facet Set feature.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated
|
| */
|
| protected void addFacetSetPropertyDescriptor(Object object) {
|
| itemPropertyDescriptors.add
|
| (createItemPropertyDescriptor
|
| (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
|
| getResourceLocator(),
|
| getString("_UI_Facet_facetSet_feature"),
|
| getString("_UI_PropertyDescriptor_description", "_UI_Facet_facetSet_feature", "_UI_Facet_type"),
|
| FacetPackage.Literals.FACET__FACET_SET,
|
| false,
|
| false,
|
| false,
|
| null,
|
| null,
|
| null));
|
| }
|
|
|
| /**
|
| * This returns Facet.gif.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated
|
| */
|
| @Override
|
| public Object getImage(Object object) {
|
| return overlayImage(object, getResourceLocator().getImage("full/obj16/Facet"));
|
| }
|
|
|
| /**
|
| * This returns the label text for the adapted class. <!-- begin-user-doc
|
| * --> <!-- end-user-doc -->
|
| *
|
| * @generated NOT
|
| */
|
| @Override
|
| public String getText(Object object) {
|
|
|
| String extended = ""; //$NON-NLS-1$
|
| for (EClass eClass : ((Facet) object).getESuperTypes()) {
|
| extended += eClass.getName() + ", "; //$NON-NLS-1$
|
| }
|
| String label = ((Facet) object).getName() + " -> " + extended; //$NON-NLS-1$
|
| return label.length() == 4 ? getString("_UI_Facet_type") //$NON-NLS-1$
|
| : getString("_UI_Facet_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
|
| */
|
| @Override
|
| public void notifyChanged(Notification notification) {
|
| updateChildren(notification);
|
| super.notifyChanged(notification);
|
| }
|
|
|
| /**
|
| * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s
|
| * describing the children that can be created under this object. <!--
|
| * begin-user-doc --> <!-- end-user-doc -->
|
| *
|
| * @generated NOT
|
| */
|
| @Override
|
| protected void collectNewChildDescriptors(
|
| Collection<Object> newChildDescriptors, Object object) {
|
| // super.collectNewChildDescriptors(newChildDescriptors, object);
|
|
|
| newChildDescriptors.add(createChildParameter(
|
| EcorePackage.Literals.ECLASS__ESTRUCTURAL_FEATURES,
|
| FacetFactory.eINSTANCE.createFacetAttribute()));
|
|
|
| newChildDescriptors.add(createChildParameter(
|
| EcorePackage.Literals.ECLASS__ESTRUCTURAL_FEATURES,
|
| FacetFactory.eINSTANCE.createFacetReference()));
|
|
|
| // newChildDescriptors.add(createChildParameter(
|
| // EcorePackage.Literals.ECLASS__ESTRUCTURAL_FEATURES,
|
| // EcoreFactory.eINSTANCE.createEReference()));
|
| //
|
| // newChildDescriptors.add(createChildParameter(
|
| // EcorePackage.Literals.ECLASS__ESTRUCTURAL_FEATURES,
|
| // EcoreFactory.eINSTANCE.createEAttribute()));
|
|
|
| newChildDescriptors.add(createChildParameter(
|
| EcorePackage.Literals.ECLASS__ESTRUCTURAL_FEATURES,
|
| FacetFactory.eINSTANCE.createShortcut()));
|
|
|
| }
|
|
|
| @Override
|
| public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
|
| if (childrenFeatures == null) {
|
| childrenFeatures = new ArrayList<EStructuralFeature>();
|
| childrenFeatures.add(EcorePackage.Literals.ECLASS__ESTRUCTURAL_FEATURES);
|
| }
|
| return childrenFeatures;
|
| }
|
|
|
| /**
|
| * Return the resource locator for this item provider's resources.
|
| * <!-- begin-user-doc -->
|
| * <!-- end-user-doc -->
|
| * @generated
|
| */
|
| @Override
|
| public ResourceLocator getResourceLocator() {
|
| return FacetEditPlugin.INSTANCE;
|
| }
|
|
|
| }
|