blob: 07369bc4a6d336f4c8712b4d5189d11461cce291 [file] [log] [blame]
<%@ jet package="org.eclipse.emf.codegen.ecore.templates.editor" imports="java.util.* org.eclipse.emf.codegen.ecore.genmodel.*" class="PluginXML" version="$Id: plugin.xmljet,v 1.27 2008/08/09 14:16:12 emerks Exp $" %>
<%
/**
* <copyright>
*
* Copyright (c) 2002-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
*
* </copyright>
*/
%>
<%GenModel genModel = (GenModel)argument;%>
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<%@ include file="../Header.xmljetinc"%>
<%if (genModel.isBundleManifest()) {%>
<plugin>
<%} else {%>
<plugin
name="%pluginName"
id="<%=genModel.getEditorPluginID()%>"
version="1.0.0"
provider-name="%providerName"
class="<%=genModel.getQualifiedEditorPluginClassName()%>$Implementation">
<requires>
<%for (String pluginID : genModel.getEditorRequiredPlugins()) { %>
<import plugin="<%=pluginID%>"<%if (!pluginID.startsWith("org.eclipse.core.runtime")) {%> export="true"<%}%>/>
<%}%>
</requires>
<runtime>
<%if (genModel.isRuntimeJar()) {%>
<library name="<%=genModel.getEditorPluginID()%>.jar">
<%} else {%>
<library name=".">
<%}%>
<export name="*"/>
</library>
</runtime>
<%}%>
<%if (genModel.sameEditEditorProject()) {%>
<%for (GenPackage genPackage : genModel.getAllGenPackagesWithClassifiers()) {%>
<%if (!genPackage.getGenClasses().isEmpty()) {%>
<extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
<factory
uri="<%=genPackage.getNSURI()%>"
class="<%=genPackage.getQualifiedItemProviderAdapterFactoryClassName()%>"
supportedTypes=
<%for (ListIterator<?> j = genPackage.getProviderSupportedTypes().listIterator(); j.hasNext(); ) {%>
<%=j.hasPrevious() ? " " : "\""%><%=j.next()%><%if (!j.hasNext()) {%>"/><%}%>
<%}%>
</extension>
<%if (genPackage.isChildCreationExtenders()) { Map<GenPackage, Map<GenClass, List<GenClass.ChildCreationData>>> extendedChildCreationData = genPackage.getExtendedChildCreationData();%>
<%if (!extendedChildCreationData.isEmpty()) {%>
<extension point="org.eclipse.emf.edit.childCreationExtenders">
<%for (Map.Entry<GenPackage, Map<GenClass, List<GenClass.ChildCreationData>>> entry : extendedChildCreationData.entrySet()) {%>
<extender
uri="<%=entry.getKey().getNSURI()%>"
class="<%=genPackage.getQualifiedItemProviderAdapterFactoryClassName()%>$<%=genPackage.getChildCreationExtenderName(entry.getKey())%>"/>
<%}%>
</extension>
<%}%>
<%}%>
<%}%>
<%}%>
<%}%>
<%if (genModel.sameModelEditorProject()) {%>
<%for (GenPackage genPackage : genModel.getAllGenPackagesWithClassifiers()) {%>
<extension point="org.eclipse.emf.ecore.generated_package">
<package
uri="<%=genPackage.getNSURI()%>"
<%if (genModel.hasLocalGenModel()) {%>
class="<%=genPackage.getQualifiedPackageInterfaceName()%>"
genModel="<%=genModel.getRelativeGenModelLocation()%>"/>
<%} else {%>
class="<%=genPackage.getQualifiedPackageInterfaceName()%>"/>
<%}%>
</extension>
<%if (genPackage.isContentType()) {%>
<extension point="org.eclipse.emf.ecore.content_parser">
<parser
contentTypeIdentifier="<%=genPackage.getContentTypeIdentifier()%>"
class="<%=genPackage.getQualifiedEffectiveResourceFactoryClassName()%>"/>
</extension>
<extension point="org.eclipse.core.contenttype.contentTypes">
<content-type
base-type="<%=genPackage.isXMIResource() ? "org.eclipse.emf.ecore.xmi" : "org.eclipse.core.runtime.xml"%>"
file-extensions="<%=genPackage.getFileExtensions()%>"
id="<%=genPackage.getContentTypeIdentifier()%>"
name="%_UI_<%=genPackage.getPrefix()%>_content_type"
priority="normal">
<describer class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
<%if (genPackage.hasTargetNamespace()) {%>
<parameter name="namespace" value="<%=genPackage.getNSURI()%>"/>
<%}%>
<%if (genPackage.isXMIResource()) {%>
<parameter name="kind" value="xmi"/>
<%}%>
</describer>
</content-type>
</extension>
<%} else if (genPackage.getResource() != GenResourceKind.NONE_LITERAL) {%>
<extension point="org.eclipse.emf.ecore.extension_parser">
<parser
type="<%=genPackage.getFileExtension()%>"
class="<%=genPackage.getQualifiedResourceFactoryClassName()%>"/>
</extension>
<%}%>
<%}%>
<%}%>
<%if (genModel.isRichClientPlatform()) {%>
<extension
point="org.eclipse.core.runtime.applications"
id="<%=genModel.getEditorAdvisorClassName()%>Application">
<application>
<run class="<%=genModel.getQualifiedEditorAdvisorClassName()%>$Application"/>
</application>
</extension>
<extension point="org.eclipse.ui.perspectives">
<perspective
name="%_UI_Perspective_label"
class="<%=genModel.getQualifiedEditorAdvisorClassName()%>$Perspective"
id="<%=genModel.getQualifiedEditorAdvisorClassName()%>Perspective">
</perspective>
</extension>
<extension point="org.eclipse.ui.commands">
<command
name="%_UI_Menu_OpenURI_label"
description="%_UI_Menu_OpenURI_description"
categoryId="org.eclipse.ui.category.file"
id="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenURICommand"/>
<command
name="%_UI_Menu_Open_label"
description="%_UI_Menu_Open_description"
categoryId="org.eclipse.ui.category.file"
id="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenCommand"/>
</extension>
<extension point="org.eclipse.ui.bindings">
<key
commandId="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenURICommand"
sequence="M1+U"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
<key
commandId="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenCommand"
sequence="M1+O"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
</extension>
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%_UI_<%=genModel.getEditorAdvisorClassName()%>_ActionSet_label"
visible="true"
id="<%=genModel.getEditorAdvisorClassName()%>ActionSet">
<action
label="%_UI_Menu_About_label"
class="<%=genModel.getQualifiedEditorAdvisorClassName()%>$AboutAction"
menubarPath="help/additions"
id="<%=genModel.getQualifiedEditorAdvisorClassName()%>AboutAction"/>
<action
label="%_UI_Menu_OpenURI_label"
definitionId="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenURICommand"
class="<%=genModel.getQualifiedEditorAdvisorClassName()%>$OpenURIAction"
menubarPath="file/additions"
id="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenURIAction"/>
<action
label="%_UI_Menu_Open_label"
definitionId="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenCommand"
class="<%=genModel.getQualifiedEditorAdvisorClassName()%>$OpenAction"
menubarPath="file/additions"
id="<%=genModel.getQualifiedEditorAdvisorClassName()%>OpenAction"/>
</actionSet>
</extension>
<%}%>
<%for (GenPackage genPackage : genModel.getAllGenPackagesWithClassifiers()) {%>
<%if (genPackage.hasConcreteClasses()){%>
<%if (genPackage.isGenerateModelWizard()) {%>
<%if (genModel.isRichClientPlatform()) {%>
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%_UI_<%=genPackage.getModelWizardClassName()%>_ActionSet_label"
visible="true"
id="<%=genPackage.getQualifiedActionBarContributorClassName()%>ActionSet">
<action
label="%_UI_<%=genPackage.getModelWizardClassName()%>_label"
class="<%=genPackage.getQualifiedActionBarContributorClassName()%>$NewAction"
menubarPath="file/new/additions"
id="<%=genPackage.getQualifiedActionBarContributorClassName()%>NewAction"/>
</actionSet>
</extension>
<%} else {%>
<extension point="org.eclipse.ui.newWizards">
<category
id="org.eclipse.emf.ecore.Wizard.category.ID"
name="%_UI_Wizard_category"/>
<wizard
id="<%=genPackage.getQualifiedModelWizardClassName()%>ID"
name="%_UI_<%=genPackage.getModelWizardClassName()%>_label"
class="<%=genPackage.getQualifiedModelWizardClassName()%>"
category="org.eclipse.emf.ecore.Wizard.category.ID"
icon="icons/full/obj16/<%=genPackage.getPrefix()%>ModelFile.gif">
<description>%_UI_<%=genPackage.getModelWizardClassName()%>_description</description>
<selection class="org.eclipse.core.resources.IResource"/>
</wizard>
</extension>
<%}%>
<%}%>
<extension point="org.eclipse.ui.editors">
<editor
id="<%=genPackage.getQualifiedEditorClassName()%>ID"
name="%_UI_<%=genPackage.getEditorClassName()%>_label"
icon="icons/full/obj16/<%=genPackage.getPrefix()%>ModelFile.gif"
<%if (!genPackage.isContentType()) {%>
extensions="<%=genPackage.getFileExtension()%>"
<%}%>
class="<%=genPackage.getQualifiedEditorClassName()%>"
contributorClass="<%=genPackage.getQualifiedActionBarContributorClassName()%>">
<%if (genPackage.isContentType()) {%>
<contentTypeBinding contentTypeId="<%=genPackage.getQualifiedContentTypeIdentifier()%>"/>
<%}%>
</editor>
</extension>
<%}%>
<%}%>
</plugin>