blob: 0964da7398bd3d93ccbbe802ef7c71713fef806b [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2018 Agence spatiale canadienne / Canadian Space Agency
* 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:
* Pierre Allard,
* Regent L'Archeveque,
* Olivier L. Larouche - initial API and implementation
* SPDX-License-Identifier: EPL-1.0
*
*******************************************************************************/
package org.eclipse.apogy.common.emf.ui.impl;
import org.eclipse.apogy.common.emf.AbstractFeatureTreeNode;
import org.eclipse.apogy.common.emf.ApogyCommonEMFFactory;
import org.eclipse.apogy.common.emf.TreeFeatureNode;
import org.eclipse.apogy.common.emf.ui.EClassSettings;
import org.eclipse.apogy.common.emf.ui.MapBasedEClassSettings;
import org.eclipse.apogy.common.emf.ui.wizards.TreeFeatureNodeWizardPage;
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.wizard.WizardPage;
public class TreeFeatureNodeWizardPageProviderCustomImpl extends TreeFeatureNodeWizardPageProviderImpl {
@Override
public EObject createEObject(EClass eClass, EClassSettings settings) {
TreeFeatureNode treeFeatureNode = ApogyCommonEMFFactory.eINSTANCE.createTreeFeatureNode();
return treeFeatureNode;
}
@Override
public EList<WizardPage> instantiateWizardPages(EObject eObject, EClassSettings settings) {
EList<WizardPage> list = new BasicEList<>();
list.addAll(super.instantiateWizardPages(eObject, settings));
AbstractFeatureTreeNode parent = null;
if (settings instanceof MapBasedEClassSettings) {
MapBasedEClassSettings mapBasedEClassSettings = (MapBasedEClassSettings) settings;
parent = (AbstractFeatureTreeNode) mapBasedEClassSettings.getUserDataMap().get("parent");
}
TreeFeatureNode treeFeatureNode = (TreeFeatureNode) eObject;
list.add(new TreeFeatureNodeWizardPage(treeFeatureNode, parent));
return list;
}
} // TreeFeatureNodeWizardPageProviderImpl