<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?><!--
  Copyright (c) 2010-2012 Henshin developers. 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
 -->

<plugin>

   <extension point="org.eclipse.team.core.fileTypes" id="repo-ftype">
      <?gmfgen generated="true"?>
      <fileTypes type="text" extension="henshin_diagram"/>
   </extension>

   <extension point="org.eclipse.emf.ecore.extension_parser" id="resource-factory">
      <?gmfgen generated="true"?>
      <parser
         type="henshin_diagram"
         class="org.eclipse.gmf.runtime.emf.core.resources.GMFResourceFactory">
      </parser>
   </extension>

   <extension point="org.eclipse.ui.editors" id="gmf-editor">
      <?gmfgen generated="true"?>
      <editor
         id="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID"
         name="%editorName"
         icon="icons/obj16/HenshinDiagramFile.gif"
         extensions="henshin_diagram"
         default="true"
         class="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditor"
         matchingStrategy="org.eclipse.emf.henshin.diagram.part.HenshinMatchingStrategy"
         contributorClass="org.eclipse.emf.henshin.diagram.part.HenshinDiagramActionBarContributor">
      </editor>
   </extension>
   
   <extension point="org.eclipse.ui.contexts" id="ui-context">
      <?gmfgen generated="true"?>
      <context
         description="%context.description"
         id="org.eclipse.emf.henshin.diagram.ui.diagramContext"
         name="%context.name"
         parentId="org.eclipse.gmf.runtime.diagram.ui.diagramContext">
      </context>
   </extension>

   <extension point="org.eclipse.ui.newWizards" id="creation-wizard">
      <?gmfgen generated="false"?>
  	      <category
            id="org.eclipse.emf.henshin.wizards"
            name="Henshin">
      </category>
      <?gmfgen generated="false"?>
     <wizard
  	     name="%newWizardName"
  	     icon="icons/obj16/HenshinDiagramFile.gif"
  	     category="org.eclipse.emf.henshin.wizards"
  	     class="org.eclipse.emf.henshin.diagram.part.HenshinCreationWizard"
  	     id="org.eclipse.emf.henshin.diagram.part.HenshinCreationWizardID">
  	  	 <description>%newWizardDesc</description>  
      </wizard>
   </extension>

   <extension point="org.eclipse.ui.popupMenus" id="init-diagram-action">
      <?gmfgen generated="false"?>
      <objectContribution
            id="org.eclipse.emf.henshin.diagram.InitDiagram"
            nameFilter="*.henshin"
            objectClass="org.eclipse.core.resources.IFile">
         <action
               label="%initDiagramActionLabel"
               class="org.eclipse.emf.henshin.diagram.part.HenshinInitDiagramFileAction"
               menubarPath="org.eclipse.emf.henshin.menu/additions"
               enablesFor="1"
               id="org.eclipse.emf.henshin.diagram.InitDiagramAction">
         </action>
      </objectContribution>
   </extension>
	
   <extension point="org.eclipse.gmf.runtime.common.ui.services.action.globalActionHandlerProviders" id="global-actions">
      <?gmfgen generated="true"?>
      <GlobalActionHandlerProvider
         class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramGlobalActionHandlerProvider"
         id="HenshinPresentation">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID">
            <ElementType class="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
               <GlobalActionId actionId="delete"/>
            </ElementType>
            <ElementType class="org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart">
               <GlobalActionId actionId="save"/>
            </ElementType>
            <ElementType class="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
               <GlobalActionId actionId="save">
               </GlobalActionId>
            </ElementType>        
         </ViewId>
      </GlobalActionHandlerProvider>
      <GlobalActionHandlerProvider
         class="org.eclipse.gmf.runtime.diagram.ui.providers.ide.providers.DiagramIDEGlobalActionHandlerProvider"
         id="HenshinPresentationIDE">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID">
            <ElementType class="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
               <GlobalActionId actionId="bookmark"/>
            </ElementType>
         </ViewId>
      </GlobalActionHandlerProvider>
      <GlobalActionHandlerProvider
            class="org.eclipse.gmf.runtime.diagram.ui.render.providers.DiagramUIRenderGlobalActionHandlerProvider"
            id="HenshinRender">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID">
            <ElementType class="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
               <GlobalActionId actionId="cut"/>
               <GlobalActionId actionId="copy"/>
               <GlobalActionId actionId="paste"/>
            </ElementType>
         </ViewId>
      </GlobalActionHandlerProvider>
   </extension>


   <extension point="org.eclipse.core.runtime.preferences" id="prefs">
      <?gmfgen generated="true"?>
      <initializer class="org.eclipse.emf.henshin.diagram.preferences.DiagramPreferenceInitializer"/>
   </extension>

   <extension point="org.eclipse.ui.preferencePages" id="prefpages">
      <?gmfgen generated="false"?>
      <page
            category="org.eclipse.emf.henshin.editor.general"
            class="org.eclipse.emf.henshin.diagram.preferences.DiagramGeneralPreferencePage"
            id="org.eclipse.emf.henshin.diagram.general"
            name="%prefpage.org.eclipse.emf.henshin.diagram.general">
      </page>
      <page
            id="org.eclipse.emf.henshin.diagram.appearance"
            name="%prefpage.org.eclipse.emf.henshin.diagram.appearance"
            category="org.eclipse.emf.henshin.diagram.general"
            class="org.eclipse.emf.henshin.diagram.preferences.DiagramAppearancePreferencePage">
      </page>
      <page
            id="org.eclipse.emf.henshin.diagram.connections"
            name="%prefpage.org.eclipse.emf.henshin.diagram.connections"
            category="org.eclipse.emf.henshin.diagram.general"
            class="org.eclipse.emf.henshin.diagram.preferences.DiagramConnectionsPreferencePage">
      </page>
      <page
            id="org.eclipse.emf.henshin.diagram.printing"
            name="%prefpage.org.eclipse.emf.henshin.diagram.printing"
            category="org.eclipse.emf.henshin.diagram.general"
            class="org.eclipse.emf.henshin.diagram.preferences.DiagramPrintingPreferencePage">
      </page>
      <page
            id="org.eclipse.emf.henshin.diagram.rulersAndGrid"
            name="%prefpage.org.eclipse.emf.henshin.diagram.rulersAndGrid"
            category="org.eclipse.emf.henshin.diagram.general"
            class="org.eclipse.emf.henshin.diagram.preferences.DiagramRulersAndGridPreferencePage">
      </page>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertyContributor" id="prop-contrib">
      <?gmfgen generated="true"?>
      <propertyContributor
            contributorId="org.eclipse.emf.henshin.diagram"
            labelProvider="org.eclipse.emf.henshin.diagram.sheet.HenshinSheetLabelProvider">
         <propertyCategory category="domain"/>
         <propertyCategory category="visual"/>
         <propertyCategory category="extra"/>
      </propertyContributor>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertyTabs" id="proptabs">
      <?gmfgen generated="true"?>   
      <propertyTabs contributorId="org.eclipse.emf.henshin.diagram">
         <propertyTab
             category="visual"
             id="property.tab.AppearancePropertySection"
             label="%tab.appearance"/>
          <propertyTab
             category="visual"
             id="property.tab.DiagramPropertySection"
             label="%tab.diagram"/>
          <propertyTab
             category="domain"
             id="property.tab.domain"
             label="%tab.domain"/>
      </propertyTabs>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertySections" id="propsections">
      <?gmfgen generated="true"?>   
      <propertySections contributorId="org.eclipse.emf.henshin.diagram">
         <propertySection id="property.section.ConnectorAppearancePropertySection" 
            filter="org.eclipse.gmf.runtime.diagram.ui.properties.filters.ConnectionEditPartPropertySectionFilter" 
            class="org.eclipse.gmf.runtime.diagram.ui.properties.sections.appearance.ConnectionAppearancePropertySection" 
            tab="property.tab.AppearancePropertySection">
         </propertySection>
         <propertySection id="property.section.ShapeColorAndFontPropertySection" 
            filter="org.eclipse.gmf.runtime.diagram.ui.properties.filters.ShapeEditPartPropertySectionFilter" 
            class="org.eclipse.gmf.runtime.diagram.ui.properties.sections.appearance.ShapeColorsAndFontsPropertySection" 
            tab="property.tab.AppearancePropertySection">
         </propertySection> 
         <propertySection id="property.section.DiagramColorsAndFontsPropertySection" 
            filter="org.eclipse.gmf.runtime.diagram.ui.properties.filters.DiagramEditPartPropertySectionFilter" 
            class="org.eclipse.gmf.runtime.diagram.ui.properties.sections.appearance.DiagramColorsAndFontsPropertySection" 
            tab="property.tab.AppearancePropertySection">
         </propertySection>     
         <propertySection id="property.section.RulerGridPropertySection" 
            filter="org.eclipse.gmf.runtime.diagram.ui.properties.filters.DiagramEditPartPropertySectionFilter" 
            class="org.eclipse.gmf.runtime.diagram.ui.properties.sections.grid.RulerGridPropertySection" 
            tab="property.tab.DiagramPropertySection">
         </propertySection>     
         <propertySection
            id="property.section.domain" 
            tab="property.tab.domain"
            class="org.eclipse.emf.henshin.diagram.sheet.HenshinPropertySection">
            <input type="org.eclipse.gmf.runtime.notation.View"/>
            <input type="org.eclipse.gef.EditPart"/>
            <input type="org.eclipse.emf.henshin.diagram.navigator.HenshinAbstractNavigatorItem"/>
         </propertySection>
      </propertySections>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertySections" id="propsections">
      <?gmfgen generated="false"?>   
      <propertySections contributorId="org.eclipse.emf.henshin.diagram">
         <propertySection
               afterSection="property.section.DiagramColorsAndFontsPropertySection"
               class="org.eclipse.emf.henshin.diagram.sheet.ColorModePropertySection"
               filter="org.eclipse.gmf.runtime.diagram.ui.properties.filters.DiagramEditPartPropertySectionFilter"
               id="property.section.ColorMode"
               tab="property.tab.AppearancePropertySection">
         </propertySection> 
      </propertySections>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.core.viewProviders" id="view-provider">
      <?gmfgen generated="true"?>
      <viewProvider class="org.eclipse.emf.henshin.diagram.providers.HenshinViewProvider">
         <Priority name="Lowest"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Diagram" semanticHints="Henshin"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Node" semanticHints="2001,2002,3001,3002,3005,3004,3003"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Edge" semanticHints="4001,4002"/>
      </viewProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.ui.editpartProviders" id="ep-provider">
      <?gmfgen generated="true"?>
      <editpartProvider class="org.eclipse.emf.henshin.diagram.providers.HenshinEditPartProvider">
         <Priority name="Lowest"/>
         <object class="org.eclipse.gmf.runtime.notation.Diagram" id="generated-diagram">
            <method name="getType()" value="Henshin"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Node" id="generated-nodes">
            <method name="getType()" value="2001,2002,3001,3002,3005,3004,3003"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Edge" id="generated-links">
            <method name="getType()" value="4001,4002"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Node" id="generated-labels">
            <method name="getType()" value="5001,5004,5002,5003,5006,5007,5005"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Node" id="generated-compartments">
            <method name="getType()" value="7001,7002,7003"/>
         </object>
         <context views="generated-diagram,generated-nodes,generated-links,generated-labels,generated-compartments"/>
      </editpartProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.ui.modelingAssistantProviders" id="modelassist-provider">
      <?gmfgen generated="true"?>
      <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfModuleEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.ModuleEditPart" id="Module_1000"/>
         <context elements="Module_1000"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfRuleEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.RuleEditPart" id="Rule_2001"/>
         <context elements="Rule_2001"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfUnitEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.UnitEditPart" id="Unit_2002"/>
         <context elements="Unit_2002"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfNodeEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.NodeEditPart" id="Node_3001"/>
         <context elements="Node_3001"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfAttributeEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.AttributeEditPart" id="Attribute_3002"/>
         <context elements="Attribute_3002"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfAttributeConditionEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.AttributeConditionEditPart" id="AttributeCondition_3005"/>
         <context elements="AttributeCondition_3005"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfSymbolEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.SymbolEditPart" id="Node_3004"/>
         <context elements="Node_3004"/>
      </modelingAssistantProvider>
            <modelingAssistantProvider class="org.eclipse.emf.henshin.diagram.providers.assistants.HenshinModelingAssistantProviderOfInvocationEditPart">
         <Priority name="Lowest"/>
         <object class="org.eclipse.emf.henshin.diagram.edit.parts.InvocationEditPart" id="Unit_3003"/>
         <context elements="Unit_3003"/>
      </modelingAssistantProvider>
      
   </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.iconProviders" id="icon-provider">
      <?gmfgen generated="true"?>
      <IconProvider class="org.eclipse.emf.henshin.diagram.providers.HenshinIconProvider">
         <Priority name="Low"/>
      </IconProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.parserProviders" id="parser-provider">
      <?gmfgen generated="true"?>
      <ParserProvider class="org.eclipse.emf.henshin.diagram.providers.HenshinParserProvider">
         <Priority name="Lowest"/>
      </ParserProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes" id="element-types">
      <?gmfgen generated="true"?>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.Module_1000"
               name="%metatype.name.Module_1000"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Module"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.ModuleEditHelper">
            <param name="semanticHint" value="1000"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.Rule_2001"
               name="%metatype.name.Rule_2001"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Rule"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.RuleEditHelper">
            <param name="semanticHint" value="2001"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.Unit_2002"
               name="%metatype.name.Unit_2002"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Unit"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.UnitEditHelper">
            <param name="semanticHint" value="2002"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.Node_3001"
               name="%metatype.name.Node_3001"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Node"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.NodeEditHelper">
            <param name="semanticHint" value="3001"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.Attribute_3002"
               name="%metatype.name.Attribute_3002"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Attribute"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.AttributeEditHelper">
            <param name="semanticHint" value="3002"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.AttributeCondition_3005"
               name="%metatype.name.AttributeCondition_3005"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="AttributeCondition"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.AttributeConditionEditHelper">
            <param name="semanticHint" value="3005"/>
         </metamodelType>
      </metamodel>
      <specializationType
            id="org.eclipse.emf.henshin.diagram.Node_3004"
            name="%metatype.name.Node_3004"
            kind="org.eclipse.gmf.runtime.diagram.ui.util.INotationType">
         <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
         <param name="semanticHint" value="3004"/>
      </specializationType>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <specializationType
               id="org.eclipse.emf.henshin.diagram.Unit_3003"
               name="%metatype.name.Unit_3003"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.emf.henshin.diagram.Unit_2002"/>
            <param name="semanticHint" value="3003"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2011/Henshin">
         <metamodelType
               id="org.eclipse.emf.henshin.diagram.Edge_4001"
               name="%metatype.name.Edge_4001"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Edge"
               edithelper="org.eclipse.emf.henshin.diagram.edit.helpers.EdgeEditHelper">
            <param name="semanticHint" value="4001"/>
         </metamodelType>
      </metamodel>
      <specializationType
            id="org.eclipse.emf.henshin.diagram.Link_4002"
            name="%metatype.name.Link_4002"
            kind="org.eclipse.gmf.runtime.diagram.ui.util.INotationType">
         <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
         <param name="semanticHint" value="4002"/>
      </specializationType>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings" id="element-types-bindings">
      <?gmfgen generated="true"?>
      <clientContext id="org.eclipse.emf.henshin.diagram.TypeContext">
         <enablement>
            <test
               property="org.eclipse.gmf.runtime.emf.core.editingDomain"
               value="org.eclipse.emf.henshin.diagram.EditingDomain"/>
         </enablement>
      </clientContext> 
      <binding context="org.eclipse.emf.henshin.diagram.TypeContext">
         <elementType ref="org.eclipse.emf.henshin.diagram.Module_1000"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Rule_2001"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Unit_2002"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Node_3001"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Attribute_3002"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.AttributeCondition_3005"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Node_3004"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Unit_3003"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Edge_4001"/>
         <elementType ref="org.eclipse.emf.henshin.diagram.Link_4002"/>
         <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/>
      </binding>
   </extension>
	   <extension point="org.eclipse.core.expressions.propertyTesters" id="navigator-proptest.isURIEditorInput">
      <?gmfgen generated="true"?>
       <propertyTester
           id="org.eclipse.emf.henshin.diagram.URIEditorInputPropertyTester"
           type="org.eclipse.emf.common.ui.URIEditorInput"
           namespace="org.eclipse.emf.henshin.diagram"
           properties="isURIEditorInput"
           class="org.eclipse.emf.henshin.diagram.part.HenshinUriEditorInputTester">
       </propertyTester>
   </extension>

	   <extension point="org.eclipse.ui.navigator.viewer" id="navigator-viewbinding">
      <?gmfgen generated="true"?>
      <viewerContentBinding viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <contentExtension pattern="org.eclipse.emf.henshin.diagram.resourceContent"/>
			<contentExtension pattern="org.eclipse.emf.henshin.diagram.domainResourceContent"/>
            <contentExtension pattern="org.eclipse.emf.henshin.diagram.navigatorLinkHelper"/>
         </includes>
      </viewerContentBinding>
      <viewerActionBinding viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <actionExtension pattern="org.eclipse.emf.henshin.diagram.navigatorActionProvider"/>
         </includes>
      </viewerActionBinding>
   </extension>

   <extension point="org.eclipse.ui.navigator.navigatorContent" id="navigator-content">
      <?gmfgen generated="true"?>
      <navigatorContent
            id="org.eclipse.emf.henshin.diagram.resourceContent" 
            name="%navigatorContentName" 
            priority="normal" 
            contentProvider="org.eclipse.emf.henshin.diagram.navigator.HenshinNavigatorContentProvider" 
            labelProvider="org.eclipse.emf.henshin.diagram.navigator.HenshinNavigatorLabelProvider"
            icon="icons/obj16/HenshinDiagramFile.gif"
            activeByDefault="true">
         <triggerPoints>
            <or>
	           <and>
    	          <instanceof value="org.eclipse.core.resources.IFile"/>
        	      <test property="org.eclipse.core.resources.extension" value="henshin_diagram"/>
               </and>
               <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinAbstractNavigatorItem"/>
            </or>
         </triggerPoints>
         <possibleChildren>
            <or>
         	   <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinAbstractNavigatorItem"/>
            </or>
         </possibleChildren>
         <commonSorter 
               id="org.eclipse.emf.henshin.diagram.navigatorSorter" 
               class="org.eclipse.emf.henshin.diagram.navigator.HenshinNavigatorSorter">
            <parentExpression>
               <or>
	              <and>
    	             <instanceof value="org.eclipse.core.resources.IFile"/>
        	         <test property="org.eclipse.core.resources.extension" value="henshin_diagram"/>
                  </and>
                  <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinAbstractNavigatorItem"/>
               </or>
            </parentExpression>
         </commonSorter>
      </navigatorContent>
      <navigatorContent
            id="org.eclipse.emf.henshin.diagram.domainResourceContent" 
            name="%domainNavigatorContentName" 
            priority="normal" 
            contentProvider="org.eclipse.emf.henshin.diagram.navigator.HenshinDomainNavigatorContentProvider" 
            labelProvider="org.eclipse.emf.henshin.diagram.navigator.HenshinDomainNavigatorLabelProvider"
            icon="icons/obj16/HenshinDiagramFile.gif"
            activeByDefault="true">
         <triggerPoints>
            <or>
	           <and>
    	          <instanceof value="org.eclipse.core.resources.IFile"/>
        	      <test property="org.eclipse.core.resources.extension" value="henshin"/>
               </and>
               <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinDomainNavigatorItem"/>
            </or>
         </triggerPoints>
         <possibleChildren>
            <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinDomainNavigatorItem"/>
         </possibleChildren>
      </navigatorContent>
      <actionProvider
            id="org.eclipse.emf.henshin.diagram.navigatorActionProvider"
            class="org.eclipse.emf.henshin.diagram.navigator.HenshinNavigatorActionProvider">
         <enablement>
            <or>
               <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinAbstractNavigatorItem"/>
            </or>
         </enablement>
      </actionProvider>
   </extension>
   
	   <extension point="org.eclipse.ui.navigator.linkHelper" id="navigator-linkhelper">
      <?gmfgen generated="true"?>
      <linkHelper
            id="org.eclipse.emf.henshin.diagram.navigatorLinkHelper"
            class="org.eclipse.emf.henshin.diagram.navigator.HenshinNavigatorLinkHelper">
         <editorInputEnablement>
            <and>
               <instanceof value="org.eclipse.emf.common.ui.URIEditorInput"/>
               <test property="org.eclipse.emf.henshin.diagram.isURIEditorInput"/>
            </and>
         </editorInputEnablement>
         <selectionEnablement>
            <instanceof value="org.eclipse.emf.henshin.diagram.navigator.HenshinAbstractNavigatorItem"/>
         </selectionEnablement>
      </linkHelper>
   </extension>
   <extension point="org.eclipse.ui.commands" id="update-cmd">
      <?gmfgen generated="true"?>
      <command
         categoryId="org.eclipse.ui.category.edit"
         defaultHandler="org.eclipse.emf.henshin.diagram.part.HenshinDiagramUpdateCommand"
         description="%update.diagram.description"
         id="org.eclipse.emf.henshin.diagram.updateDiagram"
         name="%update.diagram.name"/>
   </extension>
   
   <extension point="org.eclipse.ui.bindings" id="update-cmd-binding">
      <?gmfgen generated="true"?>
      <key 
         commandId="org.eclipse.emf.henshin.diagram.updateDiagram"
         contextId="org.eclipse.emf.henshin.diagram.ui.diagramContext"
         schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
         sequence="F5"/>
   </extension>

   <extension point="org.eclipse.ui.commands" id="menu-commands">
      <?gmfgen generated="true"?>
      <category id="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID" name="%cmdcategory.name" description="%cmdcategory.desc"/>
      <command id="org.eclipse.emf.henshin.diagram.LoadResourceAction"
         name="Load Resource"
         categoryId="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID"
         defaultHandler="org.eclipse.emf.henshin.diagram.part.LoadResourceAction"/>
   </extension>
   
      
   <extension point="org.eclipse.ui.menus" id="context-menus">
      <?gmfgen generated="true"?>
      <!-- menuContribution locationURI="menu:org.eclipse.ui.main.menu?after=">
      </menuContribution>
      <menuContribution locationURI="toolbar:org.eclipse.ui.main.toolbar?after=">
      </menuContribution -->
      <menuContribution locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu">
         <command commandId="org.eclipse.emf.henshin.diagram.LoadResourceAction">
            <visibleWhen>
               <and>
                  <with variable="activePartId"><equals value="org.eclipse.emf.henshin.diagram.part.HenshinDiagramEditorID"/></with>
                  <with variable="selection"><iterate ifEmpty="false"> 
                     <instanceof value="org.eclipse.emf.henshin.diagram.edit.parts.ModuleEditPart"/>
                  </iterate></with>
               </and>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>

   
   <extension point="org.eclipse.ui.handlers" id="menu-handlers">
      <?gmfgen generated="true"?>
   </extension>

   <extension point="org.eclipse.ui.popupMenus" id="custom-popup-menues">
      <?gmfgen generated="false"?>
      <objectContribution
            id="org.eclipse.emf.henshin.diagram.custom.modules"
            objectClass="org.eclipse.emf.henshin.diagram.edit.parts.ModuleEditPart">
         <menu
               icon="../org.eclipse.emf.henshin.editor/icons/full/ctool16/CreateEPackage.gif"
               id="importPackageMenu"
               label="%importPackageActionLabel"
               path="additions">
            <separator
                  name="main">
            </separator>
         </menu>
         <action
               class="org.eclipse.emf.henshin.diagram.part.ImportPackageAction"
               enablesFor="1"
               id="importFromWorkspace"
               label="%fromWorkspaceActionLabel"
               menubarPath="importPackageMenu/main"
               style="push">
         </action>
         
         <action
               class="org.eclipse.emf.henshin.diagram.part.ImportPackageAction"
               enablesFor="1"
               id="importFromRegistry"
               label="%fromRegistryActionLabel"
               menubarPath="importPackageMenu/main"
               style="push">
         </action>
      </objectContribution>
      
   </extension>
<extension point="org.eclipse.gmf.runtime.common.ui.services.markerNavigationProviders" id="markers-navigation">
      <?gmfgen generated="true"?>
      <MarkerNavigationProvider class="org.eclipse.emf.henshin.diagram.providers.HenshinMarkerNavigationProvider">
         <MarkerType name="org.eclipse.emf.henshin.diagram.diagnostic"/>
         <Priority name="Lowest"/>
      </MarkerNavigationProvider>
   </extension>

<extension id="diagnostic" name="Henshin Diagram Editor Plugin problems" point="org.eclipse.core.resources.markers">
      <?gmfgen generated="true"?>
      <super type="org.eclipse.core.resources.problemmarker"/>
      <super type="org.eclipse.gmf.runtime.common.ui.services.marker"/>
      <persistent value="true"/>
   </extension><extension id="validationDecoratorProvider" name="ValidationDecorations" point="org.eclipse.gmf.runtime.diagram.ui.decoratorProviders">
      <?gmfgen generated="true"?>
      <decoratorProvider class="org.eclipse.emf.henshin.diagram.providers.HenshinValidationDecoratorProvider">
         <Priority name="Lowest"/>
         <object class="org.eclipse.gmf.runtime.diagram.ui.editparts.IPrimaryEditPart(org.eclipse.gmf.runtime.diagram.ui)" id="PRIMARY_VIEW"/>
         <context decoratorTargets="PRIMARY_VIEW"/>
      </decoratorProvider>
   </extension>


   <!-- optionally, specify keybindings -->
</plugin>
