<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<!--
 Copyright (c) 2006 Borland Software Corporation
 
 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:
    Dmitry Stadnik (Borland) - initial API and implementation
-->
<plugin>

<!-- gmf generator persistent region begin -->
<!-- gmf generator persistent region end -->

   <extension point="org.eclipse.core.runtime.preferences">
      <initializer class="org.eclipse.gmf.map.editor.part.GMFMapDiagramPreferenceInitializer"/>
   </extension>

   <extension point="org.eclipse.team.core.fileTypes">
      <fileTypes
         type="text"
         extension="gmfmap_diagram">
      </fileTypes>
   </extension>

   <extension point="org.eclipse.emf.ecore.extension_parser">
      <parser
         type="gmfmap_diagram"
         class="org.eclipse.gmf.runtime.emf.core.resources.GMFResourceFactory">
      </parser>
   </extension>

   <extension point="org.eclipse.ui.editors">
     <editor
        id="org.eclipse.gmf.map.editor.part.GMFMapDiagramEditorID"
        name="%editorName"
        icon="icons/obj16/GMFMapDiagramFile.gif"
        extensions="gmfmap_diagram"
        default="true"
        class="org.eclipse.gmf.map.editor.part.GMFMapDiagramEditor"
        matchingStrategy="org.eclipse.gmf.map.editor.part.GMFMapMatchingStrategy"
        contributorClass="org.eclipse.gmf.map.editor.part.GMFMapDiagramActionBarContributor">
     </editor>
   </extension>

   <extension point="org.eclipse.ui.newWizards">
  	  <wizard
  	     name="%newWizardName"
  	     icon="icons/obj16/GMFMapDiagramFile.gif"
  	     category="org.eclipse.ui.Examples"
  	     class="org.eclipse.gmf.map.editor.part.GMFMapCreationWizard"
  	     id="org.eclipse.gmf.map.editor.part.GMFMapCreationWizardID">
  	  	 <description>%newWizardDesc</description>  
      </wizard>
   </extension>

   <extension point="org.eclipse.ui.popupMenus">
      <objectContribution
            id="org.eclipse.gmf.map.editor.ui.objectContribution.IFile1"
            nameFilter="*.gmfmap"
            objectClass="org.eclipse.core.resources.IFile">
         <action
               label="%initDiagramActionLabel"
               class="org.eclipse.gmf.map.editor.part.GMFMapInitDiagramFileAction"
               menubarPath="additions"
               enablesFor="1"
               id="org.eclipse.gmf.map.editor.part.GMFMapInitDiagramFileActionID">
         </action>
      </objectContribution>  
      <objectContribution
            adaptable="false"
            id="org.eclipse.gmf.map.editor.ui.objectContribution.MappingEditPart2"
            objectClass="org.eclipse.gmf.map.editor.edit.parts.MappingEditPart">
         <action
               class="org.eclipse.gmf.map.editor.part.GMFMapLoadResourceAction"
               enablesFor="1"
               id="org.eclipse.gmf.map.editor.part.GMFMapLoadResourceActionID"
               label="%loadResourceActionLabel"
               menubarPath="additions">
         </action>
      </objectContribution>                      
  </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.action.contributionItemProviders">
      <contributionItemProvider
            class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContributionItemProvider"
            checkPluginLoaded="false">
         <Priority name="Low"/>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.TopNodeReferenceEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.ReferenceInfoEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.FeatureLabelMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.DesignLabelMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.LabelMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.ChildReferenceEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.ReferenceInfo2EditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.CompartmentMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.CompartmentMappingInfoEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.FeatureLabelMapping2EditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.DesignLabelMapping2EditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.LabelMapping2EditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.CanvasMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.CanvasMappingInfoEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.NodeMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.NodeMappingInfoEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.LinkMappingEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.LinkMappingInfoEditPart"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.TopNodeReferenceOwnedChildEditPart"/>
            <popupAction path="/editGroup" id="deleteFromModelAction"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.ChildReferenceOwnedChildEditPart"/>
            <popupAction path="/editGroup" id="deleteFromModelAction"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.ChildReferenceReferencedChildEditPart"/>
            <popupAction path="/editGroup" id="deleteFromModelAction"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
         <popupContribution class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramContextMenuProvider">
            <popupStructuredContributionCriteria objectClass="org.eclipse.gmf.map.editor.edit.parts.CompartmentMappingChildrenEditPart"/>
            <popupAction path="/editGroup" id="deleteFromModelAction"/>
            <popupPredefinedItem id="deleteFromDiagramAction" remove="true"/>
         </popupContribution>
      </contributionItemProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.action.globalActionHandlerProviders">
      <GlobalActionHandlerProvider
         class="org.eclipse.gmf.runtime.diagram.ui.providers.DiagramGlobalActionHandlerProvider"
         id="GMFMapPresentation">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.map.editor.part.GMFMapDiagramEditorID">
            <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>
         </ViewId>
      </GlobalActionHandlerProvider>
      <GlobalActionHandlerProvider
         class="org.eclipse.gmf.runtime.diagram.ui.providers.ide.providers.DiagramIDEGlobalActionHandlerProvider"
         id="GMFMapPresentationIDE">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.map.editor.part.GMFMapDiagramEditorID">
            <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="GMFMapRender">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.map.editor.part.GMFMapDiagramEditorID">
            <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.gmf.runtime.diagram.core.viewProviders">
      <viewProvider class="org.eclipse.gmf.map.editor.providers.GMFMapViewProvider">
         <Priority name="Lowest"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Diagram" semanticHints="GMFMap"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Node" semanticHints=""/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Edge" semanticHints=""/>
      </viewProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.ui.editpartProviders">
      <editpartProvider class="org.eclipse.gmf.map.editor.providers.GMFMapEditPartProvider">
         <Priority name="Lowest"/>
      </editpartProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.ui.paletteProviders">
      <paletteProvider class="org.eclipse.gmf.map.editor.providers.GMFMapPaletteProvider">
         <Priority name="Lowest"/>
         <editor id="org.eclipse.gmf.map.editor.part.GMFMapDiagramEditorID"/>
      </paletteProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.ui.modelingAssistantProviders">
      <modelingAssistantProvider class="org.eclipse.gmf.map.editor.providers.GMFMapModelingAssistantProvider">
         <Priority name="Lowest"/>
      </modelingAssistantProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.iconProviders">
      <IconProvider class="org.eclipse.gmf.map.editor.providers.GMFMapIconProvider">
         <Priority name="Low"/>
      </IconProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.parserProviders">
      <ParserProvider class="org.eclipse.gmf.map.editor.providers.GMFMapParserProvider">
         <Priority name="Lowest"/>
      </ParserProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.Mapping_1000"
               name="Undefined"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="Mapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.MappingEditHelper">
            <param name="semanticHint" value="1000"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.TopNodeReference_3001"
               name="TopNodeReference"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="TopNodeReference"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.TopNodeReferenceEditHelper">
            <param name="semanticHint" value="3001"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.FeatureLabelMapping_3006"
               name="FeatureLabelMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="FeatureLabelMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.FeatureLabelMappingEditHelper">
            <param name="semanticHint" value="3006"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.DesignLabelMapping_3007"
               name="DesignLabelMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="DesignLabelMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.DesignLabelMappingEditHelper">
            <param name="semanticHint" value="3007"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.LabelMapping_3002"
               name="LabelMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="LabelMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.LabelMappingEditHelper">
            <param name="semanticHint" value="3002"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.ChildReference_3004"
               name="ChildReference"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="ChildReference"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.ChildReferenceEditHelper">
            <param name="semanticHint" value="3004"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.CompartmentMapping_3005"
               name="CompartmentMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="CompartmentMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.CompartmentMappingEditHelper">
            <param name="semanticHint" value="3005"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.FeatureLabelMapping_3008"
               name="FeatureLabelMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.FeatureLabelMappingEditHelperAdvice">
            <specializes id="org.eclipse.gmf.map.editor.FeatureLabelMapping_3006"/>
            <param name="semanticHint" value="3008"/>
         </specializationType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.DesignLabelMapping_3009"
               name="DesignLabelMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.DesignLabelMappingEditHelperAdvice">
            <specializes id="org.eclipse.gmf.map.editor.DesignLabelMapping_3007"/>
            <param name="semanticHint" value="3009"/>
         </specializationType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.LabelMapping_3003"
               name="LabelMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.LabelMappingEditHelperAdvice">
            <specializes id="org.eclipse.gmf.map.editor.LabelMapping_3002"/>
            <param name="semanticHint" value="3003"/>
         </specializationType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.CanvasMapping_2001"
               name="CanvasMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="CanvasMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.CanvasMappingEditHelper">
            <param name="semanticHint" value="2001"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.NodeMapping_2003"
               name="NodeMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="NodeMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.NodeMappingEditHelper">
            <param name="semanticHint" value="2003"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <metamodelType
               id="org.eclipse.gmf.map.editor.LinkMapping_2002"
               name="LinkMapping"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="LinkMapping"
               edithelper="org.eclipse.gmf.map.editor.edit.helpers.LinkMappingEditHelper">
            <param name="semanticHint" value="2002"/>
         </metamodelType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.TopNodeReferenceOwnedChild_4001"
               name="Undefined"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.TopNodeReferenceOwnedChildEditHelperAdvice">
            <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
            <param name="semanticHint" value="4001"/>
         </specializationType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.ChildReferenceOwnedChild_4004"
               name="Undefined"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.ChildReferenceOwnedChildEditHelperAdvice">
            <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
            <param name="semanticHint" value="4004"/>
         </specializationType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.ChildReferenceReferencedChild_4002"
               name="Undefined"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.ChildReferenceReferencedChildEditHelperAdvice">
            <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
            <param name="semanticHint" value="4002"/>
         </specializationType>
      </metamodel>

      <metamodel nsURI="http://www.eclipse.org/gmf/2006/mappings">
         <specializationType
               id="org.eclipse.gmf.map.editor.CompartmentMappingChildren_4003"
               name="Undefined"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               edithelperadvice="org.eclipse.gmf.map.editor.edit.helpers.CompartmentMappingChildrenEditHelperAdvice">
            <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
            <param name="semanticHint" value="4003"/>
         </specializationType>
      </metamodel>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
      <clientContext id="GMFMapClientContext">
         <enablement>
            <test
               property="org.eclipse.gmf.runtime.emf.core.editingDomain"
               value="org.eclipse.gmf.map.editor.EditingDomain"/>
         </enablement>
      </clientContext> 
      <binding context="GMFMapClientContext">
         <elementType ref="org.eclipse.gmf.map.editor.Mapping_1000"/>
         <elementType ref="org.eclipse.gmf.map.editor.TopNodeReference_3001"/>
         <elementType ref="org.eclipse.gmf.map.editor.FeatureLabelMapping_3006"/>
         <elementType ref="org.eclipse.gmf.map.editor.DesignLabelMapping_3007"/>
         <elementType ref="org.eclipse.gmf.map.editor.LabelMapping_3002"/>
         <elementType ref="org.eclipse.gmf.map.editor.ChildReference_3004"/>
         <elementType ref="org.eclipse.gmf.map.editor.CompartmentMapping_3005"/>
         <elementType ref="org.eclipse.gmf.map.editor.FeatureLabelMapping_3008"/>
         <elementType ref="org.eclipse.gmf.map.editor.DesignLabelMapping_3009"/>
         <elementType ref="org.eclipse.gmf.map.editor.LabelMapping_3003"/>
         <elementType ref="org.eclipse.gmf.map.editor.CanvasMapping_2001"/>
         <elementType ref="org.eclipse.gmf.map.editor.NodeMapping_2003"/>
         <elementType ref="org.eclipse.gmf.map.editor.LinkMapping_2002"/>
         <elementType ref="org.eclipse.gmf.map.editor.TopNodeReferenceOwnedChild_4001"/>
         <elementType ref="org.eclipse.gmf.map.editor.ChildReferenceOwnedChild_4004"/>
         <elementType ref="org.eclipse.gmf.map.editor.ChildReferenceReferencedChild_4002"/>
         <elementType ref="org.eclipse.gmf.map.editor.CompartmentMappingChildren_4003"/>
         <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/>
      </binding>
   </extension>

   <extension point="org.eclipse.ui.navigator.viewer">
      <viewerContentBinding viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <contentExtension pattern="org.eclipse.gmf.map.editor.resourceContent"/>
            <contentExtension pattern="org.eclipse.gmf.map.editor.navigatorLinkHelper"/>
         </includes>
      </viewerContentBinding>
   </extension>

   <extension point="org.eclipse.ui.navigator.navigatorContent">
      <navigatorContent 
            id="org.eclipse.gmf.map.editor.resourceContent" 
            name="%navigatorContentName" 
            priority="normal" 
            contentProvider="org.eclipse.gmf.map.editor.navigator.GMFMapNavigatorContentProvider" 
            labelProvider="org.eclipse.gmf.map.editor.navigator.GMFMapNavigatorLabelProvider"
            icon="icons/obj16/GMFMapDiagramFile.gif"
            activeByDefault="true">
         <triggerPoints>
            <or>
	            <and>
    	           <instanceof value="org.eclipse.core.resources.IFile"/>
        	       <test property="org.eclipse.core.resources.extension" value="gmfmap_diagram"/>
            	</and>
            	<instanceof value="org.eclipse.gmf.map.editor.navigator.GMFMapAbstractNavigatorItem"/>
            </or>
         </triggerPoints>
         <possibleChildren>
         	<instanceof value="org.eclipse.gmf.map.editor.navigator.GMFMapAbstractNavigatorItem"/>
         </possibleChildren>
         <commonSorter 
               id="org.eclipse.gmf.map.editor.navigatorSorter" 
               class="org.eclipse.gmf.map.editor.navigator.GMFMapNavigatorSorter">
            <parentExpression>
               <or>
	              <and>
    	             <instanceof value="org.eclipse.core.resources.IFile"/>
        	         <test property="org.eclipse.core.resources.extension" value="gmfmap_diagram"/>
                  </and>
                  <instanceof value="org.eclipse.gmf.map.editor.navigator.GMFMapAbstractNavigatorItem"/>
               </or>
            </parentExpression>
         </commonSorter>
         <actionProvider
               id="org.eclipse.gmf.map.editor.navigatorActionProvider"
               class="org.eclipse.gmf.map.editor.navigator.GMFMapNavigatorActionProvider">
         </actionProvider>
      </navigatorContent>
   </extension>
   
   <extension point="org.eclipse.ui.navigator.linkHelper">
      <linkHelper
            id="org.eclipse.gmf.map.editor.navigatorLinkHelper"
            class="org.eclipse.gmf.map.editor.navigator.GMFMapNavigatorLinkHelper">
         <editorInputEnablement>
            <instanceof value="org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide.document.FileEditorInputProxy"/>
         </editorInputEnablement>
         <selectionEnablement>
            <instanceof value="org.eclipse.gmf.map.editor.navigator.GMFMapAbstractNavigatorItem"/>
         </selectionEnablement>
      </linkHelper>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertyContributor">
      <propertyContributor contributorId="org.eclipse.gmf.map.editor"
            labelProvider="org.eclipse.gmf.map.editor.sheet.GMFMapSheetLabelProvider">
         <propertyCategory category="domain"/>
         <propertyCategory category="visual"/>
         <propertyCategory category="extra"/>
      </propertyContributor>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertyTabs">
      <propertyTabs contributorId="org.eclipse.gmf.map.editor">
         <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">
      <propertySections contributorId="org.eclipse.gmf.map.editor">

         <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.gmf.map.editor.sheet.GMFMapPropertySection">
            <input type="org.eclipse.gmf.runtime.notation.View"/>
            <input type="org.eclipse.gef.EditPart"/>
            <input type="org.eclipse.gmf.map.editor.navigator.GMFMapAbstractNavigatorItem"/>
         </propertySection>
      </propertySections>
   </extension>
</plugin>