| /******************************************************************************* |
| * Copyright (c) 2008, 2012 Obeo. |
| * 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: |
| * Obeo - initial API and implementation |
| *******************************************************************************/ |
| package org.eclipse.emf.eef.extended.editor.components; |
| |
| // Start of user code for imports |
| import org.eclipse.emf.ecore.EObject; |
| import org.eclipse.emf.ecore.resource.ResourceSet; |
| import org.eclipse.emf.eef.extended.editor.PartFilter; |
| import org.eclipse.emf.eef.extended.editor.parts.EditorViewsRepository; |
| import org.eclipse.emf.eef.extended.editor.parts.PartFilterPropertiesEditionPart; |
| import org.eclipse.emf.eef.mapping.components.DocumentedElementPropertiesEditionComponent; |
| import org.eclipse.emf.eef.runtime.api.parts.IPropertiesEditionPart; |
| import org.eclipse.emf.eef.runtime.context.PropertiesEditingContext; |
| import org.eclipse.emf.eef.runtime.impl.components.ComposedPropertiesEditionComponent; |
| import org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider; |
| import org.eclipse.emf.eef.views.parts.ViewsViewsRepository; |
| |
| |
| // End of user code |
| |
| /** |
| * @author <a href="mailto:goulwen.lefur@obeo.fr">Goulwen LeFur</a> |
| * |
| */ |
| public class PartFilterPropertiesEditionComponent extends ComposedPropertiesEditionComponent { |
| |
| /** |
| * The Base part |
| * |
| */ |
| private PartFilterPropertiesEditionPart basePart; |
| |
| /** |
| * The PartFilterBasePropertiesEditionComponent sub component |
| * |
| */ |
| protected PartFilterBasePropertiesEditionComponent partFilterBasePropertiesEditionComponent; |
| |
| /** |
| * The DocumentedElementPropertiesEditionComponent sub component |
| * |
| */ |
| protected DocumentedElementPropertiesEditionComponent documentedElementPropertiesEditionComponent; |
| |
| /** |
| * Parameterized constructor |
| * |
| * @param partFilter the EObject to edit |
| * |
| */ |
| public PartFilterPropertiesEditionComponent(PropertiesEditingContext editingContext, EObject partFilter, String editing_mode) { |
| super(editingContext, editing_mode); |
| if (partFilter instanceof PartFilter) { |
| PropertiesEditingProvider provider = null; |
| provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(partFilter, PropertiesEditingProvider.class); |
| partFilterBasePropertiesEditionComponent = (PartFilterBasePropertiesEditionComponent)provider.getPropertiesEditingComponent(editingContext, editing_mode, PartFilterBasePropertiesEditionComponent.BASE_PART, PartFilterBasePropertiesEditionComponent.class); |
| addSubComponent(partFilterBasePropertiesEditionComponent); |
| provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(partFilter, PropertiesEditingProvider.class); |
| documentedElementPropertiesEditionComponent = (DocumentedElementPropertiesEditionComponent)provider.getPropertiesEditingComponent(editingContext, editing_mode, DocumentedElementPropertiesEditionComponent.DOCUMENTATION_PART, DocumentedElementPropertiesEditionComponent.class); |
| addSubComponent(documentedElementPropertiesEditionComponent); |
| } |
| } |
| |
| /** |
| * {@inheritDoc} |
| * |
| * @see org.eclipse.emf.eef.runtime.impl.components.ComposedPropertiesEditionComponent# |
| * getPropertiesEditionPart(int, java.lang.String) |
| * |
| */ |
| public IPropertiesEditionPart getPropertiesEditionPart(int kind, String key) { |
| if (PartFilterBasePropertiesEditionComponent.BASE_PART.equals(key)) { |
| basePart = (PartFilterPropertiesEditionPart)partFilterBasePropertiesEditionComponent.getPropertiesEditionPart(kind, key); |
| return (IPropertiesEditionPart)basePart; |
| } |
| return super.getPropertiesEditionPart(kind, key); |
| } |
| |
| /** |
| * {@inheritDoc} |
| * |
| * @see org.eclipse.emf.eef.runtime.impl.components.ComposedPropertiesEditionComponent# |
| * setPropertiesEditionPart(java.lang.Object, int, |
| * org.eclipse.emf.eef.runtime.api.parts.IPropertiesEditionPart) |
| * |
| */ |
| public void setPropertiesEditionPart(java.lang.Object key, int kind, IPropertiesEditionPart propertiesEditionPart) { |
| if (EditorViewsRepository.PartFilter.class == key) { |
| super.setPropertiesEditionPart(key, kind, propertiesEditionPart); |
| basePart = (PartFilterPropertiesEditionPart)propertiesEditionPart; |
| } |
| } |
| |
| /** |
| * {@inheritDoc} |
| * |
| * @see org.eclipse.emf.eef.runtime.impl.components.ComposedPropertiesEditionComponent# |
| * initPart(java.lang.Object, int, org.eclipse.emf.ecore.EObject, |
| * org.eclipse.emf.ecore.resource.ResourceSet) |
| * |
| */ |
| public void initPart(java.lang.Object key, int kind, EObject element, ResourceSet allResource) { |
| if (key == EditorViewsRepository.PartFilter.class) { |
| super.initPart(key, kind, element, allResource); |
| } |
| if (key == ViewsViewsRepository.Documentation.class) { |
| super.initPart(key, kind, element, allResource); |
| } |
| } |
| } |