<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
Copyright (c) 2006, 2008 Borland Software Corp.

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:
   Alexander Shatalin (Borland) - initial API and implementation
-->
<plugin>

   <extension point="org.eclipse.team.core.fileTypes" id="repo-ftype">
      <?gmfgen generated="true"?>
      <fileTypes type="text" extension="ecore_diagram"/>
   </extension>

   <extension point="org.eclipse.emf.ecore.extension_parser" id="resource-factory">
      <?gmfgen generated="true"?>
      <parser
         type="ecore_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.gmf.ecore.part.EcoreDiagramEditorID"
         name="%editorName"
         icon="icons/full/obj16/EcoreModelFile.gif"
         extensions="ecore_diagram"
         default="true"
         class="org.eclipse.gmf.ecore.part.EcoreDiagramEditor"
         matchingStrategy="org.eclipse.gmf.ecore.part.EcoreMatchingStrategy"
         contributorClass="org.eclipse.gmf.ecore.part.EcoreDiagramActionBarContributor">
      </editor>
   </extension>
   
   <extension point="org.eclipse.ui.contexts" id="ui-context">
      <?gmfgen generated="true"?>
      <context
         description="%context.description"
         id="org.eclipse.gmf.ecore.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="true"?>
  	  <wizard
  	     name="%newWizardName"
  	     icon="icons/full/obj16/EcoreModelFile.gif"
  	     category="org.eclipse.ui.Examples/org.eclipse.gmf.examples"
  	     class="org.eclipse.gmf.ecore.part.EcoreCreationWizard"
  	     id="org.eclipse.gmf.ecore.part.EcoreCreationWizardID">
  	  	 <description>%newWizardDesc</description>  
      </wizard>
   </extension>

   <extension point="org.eclipse.ui.popupMenus" id="init-diagram-action">
      <?gmfgen generated="true"?>
      <objectContribution
            id="org.eclipse.gmf.ecore.editor.InitDiagram"
            nameFilter="*.ecore"
            objectClass="org.eclipse.core.resources.IFile">
         <action
               label="%initDiagramActionLabel"
               class="org.eclipse.gmf.ecore.part.EcoreInitDiagramFileAction"
               menubarPath="additions"
               enablesFor="1"
               id="org.eclipse.gmf.ecore.editor.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="EcorePresentation">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID">
            <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.printing.render.providers.DiagramWithPrintGlobalActionHandlerProvider"
         id="EcorePresentationPrint">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID">
            <ElementType class="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
               <GlobalActionId actionId="print"/>
            </ElementType>
         </ViewId>
      </GlobalActionHandlerProvider>
      <GlobalActionHandlerProvider
         class="org.eclipse.gmf.runtime.diagram.ui.providers.ide.providers.DiagramIDEGlobalActionHandlerProvider"
         id="EcorePresentationIDE">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID">
            <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="EcoreRender">
         <Priority name="Lowest"/>
         <ViewId id="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID">
            <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.gmf.ecore.preferences.DiagramPreferenceInitializer"/>
   </extension>

   <extension point="org.eclipse.ui.preferencePages" id="prefpages">
      <?gmfgen generated="true"?>
      <page
            id="org.eclipse.emf.ecore.diagram.general"
            name="%prefpage.org.eclipse.emf.ecore.diagram.general"
            class="org.eclipse.gmf.ecore.preferences.DiagramGeneralPreferencePage">
      </page>
      <page
            id="org.eclipse.emf.ecore.diagram.appearance"
            name="%prefpage.org.eclipse.emf.ecore.diagram.appearance"
            category="org.eclipse.emf.ecore.diagram.general"
            class="org.eclipse.gmf.ecore.preferences.DiagramAppearancePreferencePage">
      </page>
      <page
            id="org.eclipse.emf.ecore.diagram.connections"
            name="%prefpage.org.eclipse.emf.ecore.diagram.connections"
            category="org.eclipse.emf.ecore.diagram.general"
            class="org.eclipse.gmf.ecore.preferences.DiagramConnectionsPreferencePage">
      </page>
      <page
            id="org.eclipse.emf.ecore.diagram.printing"
            name="%prefpage.org.eclipse.emf.ecore.diagram.printing"
            category="org.eclipse.emf.ecore.diagram.general"
            class="org.eclipse.gmf.ecore.preferences.DiagramPrintingPreferencePage">
      </page>
      <page
            id="org.eclipse.emf.ecore.diagram.rulersAndGrid"
            name="%prefpage.org.eclipse.emf.ecore.diagram.rulersAndGrid"
            category="org.eclipse.emf.ecore.diagram.general"
            class="org.eclipse.gmf.ecore.preferences.DiagramRulersAndGridPreferencePage">
      </page>
   </extension>

   <extension point="org.eclipse.ui.views.properties.tabbed.propertyContributor" id="prop-contrib">
      <?gmfgen generated="true"?>
      <propertyContributor
            contributorId="org.eclipse.gmf.ecore.editor"
            labelProvider="org.eclipse.gmf.ecore.sheet.EcoreSheetLabelProvider">
         <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.gmf.ecore.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" id="propsections">
      <?gmfgen generated="true"?>   
      <propertySections contributorId="org.eclipse.gmf.ecore.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.ecore.sheet.EcorePropertySection">
            <input type="org.eclipse.gmf.runtime.notation.View"/>
            <input type="org.eclipse.gef.EditPart"/>
            <input type="org.eclipse.gmf.ecore.navigator.EcoreAbstractNavigatorItem"/>
         </propertySection>
      </propertySections>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.core.viewProviders" id="view-provider">
      <?gmfgen generated="true"?>
      <viewProvider class="org.eclipse.gmf.ecore.providers.EcoreViewProvider">
         <Priority name="Lowest"/>
         <object id="referencing-diagrams" class="org.eclipse.gmf.runtime.notation.Diagram">
            <method name="getType()" value="Ecore"/>
         </object>
         <context viewClass="org.eclipse.gmf.runtime.notation.Node" containerViews="referencing-diagrams"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Diagram" semanticHints="Ecore"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Node" semanticHints="2001,2002,2003,2004,2005,3001,3002,3003,3004,3005,3006,3007,3008,3009"/>
         <context viewClass="org.eclipse.gmf.runtime.notation.Edge" semanticHints="4001,4002,4003,4004"/>
      </viewProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.ui.editpartProviders" id="ep-provider">
      <?gmfgen generated="true"?>
      <editpartProvider class="org.eclipse.gmf.ecore.providers.EcoreEditPartProvider">
         <Priority name="Lowest"/>
         <object class="org.eclipse.gmf.runtime.notation.Diagram" id="generated-diagram">
            <method name="getType()" value="Ecore"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Node" id="generated-nodes">
            <method name="getType()" value="2001,2002,2003,2004,2005,3001,3002,3003,3004,3005,3006,3007,3008,3009"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Edge" id="generated-links">
            <method name="getType()" value="4001,4002,4003,4004"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Node" id="generated-labels">
            <method name="getType()" value="5001,5002,5003,5004,5005"/>
         </object>
         <object class="org.eclipse.gmf.runtime.notation.Node" id="generated-compartments">
            <method name="getType()" value="7001,7002,7003,7004,7005,7006,7007,7008,7009,7010,7011,7012"/>
         </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.gmf.ecore.providers.EcoreModelingAssistantProvider">
         <Priority name="Lowest"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EPackageEditPart" id="EPackage_1000"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EClassEditPart" id="EClass_2001"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EPackage2EditPart" id="EPackage_2002"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EAnnotationEditPart" id="EAnnotation_2003"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EDataTypeEditPart" id="EDataType_2004"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EEnumEditPart" id="EEnum_2005"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EAttributeEditPart" id="EAttribute_3001"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EOperationEditPart" id="EOperation_3002"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EAnnotation2EditPart" id="EAnnotation_3003"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EClass2EditPart" id="EClass_3004"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EPackage3EditPart" id="EPackage_3005"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EDataType2EditPart" id="EDataType_3006"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EEnum2EditPart" id="EEnum_3007"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EStringToStringMapEntryEditPart" id="EStringToStringMapEntry_3008"/>
         <object class="org.eclipse.gmf.ecore.edit.parts.EEnumLiteralEditPart" id="EEnumLiteral_3009"/>
         <context elements="EPackage_1000,EClass_2001,EPackage_2002,EAnnotation_2003,EDataType_2004,EEnum_2005,EAttribute_3001,EOperation_3002,EAnnotation_3003,EClass_3004,EPackage_3005,EDataType_3006,EEnum_3007,EStringToStringMapEntry_3008,EEnumLiteral_3009"/>
      </modelingAssistantProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.common.ui.services.iconProviders" id="icon-provider">
      <?gmfgen generated="true"?>
      <IconProvider class="org.eclipse.gmf.ecore.providers.EcoreIconProvider">
         <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.gmf.ecore.providers.EcoreParserProvider">
         <Priority name="Lowest"/>
      </ParserProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.diagram.ui.decoratorProviders" id="decorator-provider">
      <?gmfgen generated="true"?>
      <decoratorProvider class="org.eclipse.gmf.ecore.providers.EcoreShortcutsDecoratorProvider">
         <Priority name="Lowest"/>
         <object class="org.eclipse.gmf.runtime.notation.Node(org.eclipse.gmf.runtime.notation)" id="generated-top-nodes">
            <method name="getType()" value="2001,2002,2003,2004,2005"/>
         </object>
         <context decoratorTargets="generated-top-nodes"/>
      </decoratorProvider>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes" id="element-types">
      <?gmfgen generated="true"?>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EPackage_1000"
               name="%metatype.name.EPackage_1000"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EPackage"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EPackageEditHelper">
            <param name="semanticHint" value="1000"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EClass_2001"
               name="%metatype.name.EClass_2001"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EClass"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EClassEditHelper">
            <param name="semanticHint" value="2001"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EPackage_2002"
               name="%metatype.name.EPackage_2002"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EPackage_1000"/>
            <param name="semanticHint" value="2002"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EAnnotation_2003"
               name="%metatype.name.EAnnotation_2003"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EAnnotation_3003"/>
            <param name="semanticHint" value="2003"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EDataType_2004"
               name="%metatype.name.EDataType_2004"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EDataType_3006"/>
            <param name="semanticHint" value="2004"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EEnum_2005"
               name="%metatype.name.EEnum_2005"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EEnum_3007"/>
            <param name="semanticHint" value="2005"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EAttribute_3001"
               name="%metatype.name.EAttribute_3001"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EAttribute"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EAttributeEditHelper">
            <param name="semanticHint" value="3001"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EOperation_3002"
               name="%metatype.name.EOperation_3002"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EOperation"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EOperationEditHelper">
            <param name="semanticHint" value="3002"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EAnnotation_3003"
               name="%metatype.name.EAnnotation_3003"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EAnnotation"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EAnnotationEditHelper">
            <param name="semanticHint" value="3003"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EClass_3004"
               name="%metatype.name.EClass_3004"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EClass_2001"/>
            <param name="semanticHint" value="3004"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EPackage_3005"
               name="%metatype.name.EPackage_3005"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EPackage_1000"/>
            <param name="semanticHint" value="3005"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EDataType_3006"
               name="%metatype.name.EDataType_3006"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EDataType"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EDataTypeEditHelper">
            <param name="semanticHint" value="3006"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EEnum_3007"
               name="%metatype.name.EEnum_3007"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EEnum"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EEnumEditHelper">
            <param name="semanticHint" value="3007"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EStringToStringMapEntry_3008"
               name="%metatype.name.EStringToStringMapEntry_3008"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EStringToStringMapEntry"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EStringToStringMapEntryEditHelper">
            <param name="semanticHint" value="3008"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EEnumLiteral_3009"
               name="%metatype.name.EEnumLiteral_3009"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EEnumLiteral"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EEnumLiteralEditHelper">
            <param name="semanticHint" value="3009"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EAnnotationReferences_4001"
               name="%metatype.name.EAnnotationReferences_4001"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
            <param name="semanticHint" value="4001"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <metamodelType
               id="org.eclipse.gmf.ecore.editor.EReference_4002"
               name="%metatype.name.EReference_4002"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"
               eclass="EReference"
               edithelper="org.eclipse.gmf.ecore.edit.helpers.EReferenceEditHelper">
            <param name="semanticHint" value="4002"/>
         </metamodelType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EReference_4003"
               name="%metatype.name.EReference_4003"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.ecore.editor.EReference_4002"/>
            <param name="semanticHint" value="4003"/>
         </specializationType>
      </metamodel>
      <metamodel nsURI="http://www.eclipse.org/emf/2002/Ecore">
         <specializationType
               id="org.eclipse.gmf.ecore.editor.EClassESuperTypes_4004"
               name="%metatype.name.EClassESuperTypes_4004"
               kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
            <specializes id="org.eclipse.gmf.runtime.emf.type.core.null"/>
            <param name="semanticHint" value="4004"/>
         </specializationType>
      </metamodel>
   </extension>

   <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings" id="element-types-bindings">
      <?gmfgen generated="true"?>
      <clientContext id="org.eclipse.gmf.ecore.editor.TypeContext">
         <enablement>
            <test
               property="org.eclipse.gmf.runtime.emf.core.editingDomain"
               value="org.eclipse.gmf.ecore.editor.EditingDomain"/>
         </enablement>
      </clientContext> 
      <binding context="org.eclipse.gmf.ecore.editor.TypeContext">
         <elementType ref="org.eclipse.gmf.ecore.editor.EPackage_1000"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EClass_2001"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EPackage_2002"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EAnnotation_2003"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EDataType_2004"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EEnum_2005"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EAttribute_3001"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EOperation_3002"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EAnnotation_3003"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EClass_3004"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EPackage_3005"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EDataType_3006"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EEnum_3007"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EStringToStringMapEntry_3008"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EEnumLiteral_3009"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EAnnotationReferences_4001"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EReference_4002"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EReference_4003"/>
         <elementType ref="org.eclipse.gmf.ecore.editor.EClassESuperTypes_4004"/>
         <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.gmf.ecore.editor.URIEditorInputPropertyTester"
           type="org.eclipse.emf.common.ui.URIEditorInput"
           namespace="org.eclipse.gmf.ecore.editor"
           properties="isURIEditorInput"
           class="org.eclipse.gmf.ecore.part.EcoreUriEditorInputTester">
       </propertyTester>
   </extension>
   <extension point="org.eclipse.core.expressions.propertyTesters" id="navigator-proptest.isShortcut">
      <?gmfgen generated="true"?>
       <propertyTester
           id="org.eclipse.gmf.ecore.editor.ShortcutPropertyTester"
           type="org.eclipse.gmf.runtime.notation.View"
           namespace="org.eclipse.gmf.ecore.editor"
           properties="isShortcut"
           class="org.eclipse.gmf.ecore.part.EcoreShortcutPropertyTester">
       </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.gmf.ecore.editor.resourceContent"/>
			<contentExtension pattern="org.eclipse.gmf.ecore.editor.domainResourceContent"/>
            <contentExtension pattern="org.eclipse.gmf.ecore.editor.navigatorLinkHelper"/>
         </includes>
      </viewerContentBinding>
      <viewerActionBinding viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <actionExtension pattern="org.eclipse.gmf.ecore.editor.navigatorActionProvider"/>
         </includes>
      </viewerActionBinding>
   </extension>

   <extension point="org.eclipse.ui.navigator.navigatorContent" id="navigator-content">
      <?gmfgen generated="true"?>
      <navigatorContent
            id="org.eclipse.gmf.ecore.editor.resourceContent" 
            name="%navigatorContentName" 
            priority="normal" 
            contentProvider="org.eclipse.gmf.ecore.navigator.EcoreNavigatorContentProvider" 
            labelProvider="org.eclipse.gmf.ecore.navigator.EcoreNavigatorLabelProvider"
            icon="icons/full/obj16/EcoreModelFile.gif"
            activeByDefault="true">
         <triggerPoints>
            <or>
	           <and>
    	          <instanceof value="org.eclipse.core.resources.IFile"/>
        	      <test property="org.eclipse.core.resources.extension" value="ecore_diagram"/>
               </and>
               <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreAbstractNavigatorItem"/>
           	   <adapt type="org.eclipse.gmf.runtime.notation.View">
           	      <test property="org.eclipse.gmf.ecore.editor.isShortcut"/>
           	   </adapt>
            </or>
         </triggerPoints>
         <possibleChildren>
            <or>
         	   <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreAbstractNavigatorItem"/>
           	   <adapt type="org.eclipse.gmf.runtime.notation.View">
           	      <test property="org.eclipse.gmf.ecore.editor.isShortcut"/>
           	   </adapt>
            </or>
         </possibleChildren>
         <commonSorter 
               id="org.eclipse.gmf.ecore.editor.navigatorSorter" 
               class="org.eclipse.gmf.ecore.navigator.EcoreNavigatorSorter">
            <parentExpression>
               <or>
	              <and>
    	             <instanceof value="org.eclipse.core.resources.IFile"/>
        	         <test property="org.eclipse.core.resources.extension" value="ecore_diagram"/>
                  </and>
                  <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreAbstractNavigatorItem"/>
               </or>
            </parentExpression>
         </commonSorter>
      </navigatorContent>
      <navigatorContent
            id="org.eclipse.gmf.ecore.editor.domainResourceContent" 
            name="%domainNavigatorContentName" 
            priority="normal" 
            contentProvider="org.eclipse.gmf.ecore.navigator.EcoreDomainNavigatorContentProvider" 
            labelProvider="org.eclipse.gmf.ecore.navigator.EcoreDomainNavigatorLabelProvider"
            icon="icons/full/obj16/EcoreModelFile.gif"
            activeByDefault="true">
         <triggerPoints>
            <or>
	           <and>
    	          <instanceof value="org.eclipse.core.resources.IFile"/>
        	      <test property="org.eclipse.core.resources.extension" value="ecore"/>
               </and>
               <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreDomainNavigatorItem"/>
            </or>
         </triggerPoints>
         <possibleChildren>
            <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreDomainNavigatorItem"/>
         </possibleChildren>
      </navigatorContent>
      <actionProvider
            id="org.eclipse.gmf.ecore.editor.navigatorActionProvider"
            class="org.eclipse.gmf.ecore.navigator.EcoreNavigatorActionProvider">
         <enablement>
            <or>
               <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreAbstractNavigatorItem"/>
           	   <adapt type="org.eclipse.gmf.runtime.notation.View">
           	      <test property="org.eclipse.gmf.ecore.editor.isShortcut"/>
           	   </adapt>
            </or>
         </enablement>
      </actionProvider>
   </extension>
   
	   <extension point="org.eclipse.ui.navigator.linkHelper" id="navigator-linkhelper">
      <?gmfgen generated="true"?>
      <linkHelper
            id="org.eclipse.gmf.ecore.editor.navigatorLinkHelper"
            class="org.eclipse.gmf.ecore.navigator.EcoreNavigatorLinkHelper">
         <editorInputEnablement>
            <and>
               <instanceof value="org.eclipse.emf.common.ui.URIEditorInput"/>
               <test property="org.eclipse.gmf.ecore.editor.isURIEditorInput"/>
            </and>
         </editorInputEnablement>
         <selectionEnablement>
            <instanceof value="org.eclipse.gmf.ecore.navigator.EcoreAbstractNavigatorItem"/>
         </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.gmf.ecore.part.EcoreDiagramUpdateCommand"
         description="%update.diagram.description"
         id="org.eclipse.gmf.ecore.updateDiagram"
         name="%update.diagram.name"/>
   </extension>
   
   <extension point="org.eclipse.ui.bindings" id="update-cmd-binding">
      <?gmfgen generated="true"?>
      <key 
         commandId="org.eclipse.gmf.ecore.updateDiagram"
         contextId="org.eclipse.gmf.ecore.ui.diagramContext"
         schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
         sequence="F5"/>
   </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.gmf.ecore.editor.LoadResourceAction">
            <visibleWhen>
               <and>
                  <with variable="activePartId"><equals value="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID"/></with>
                  <with variable="selection"><iterate ifEmpty="false"> 
                     <instanceof value="org.eclipse.gmf.ecore.edit.parts.EPackageEditPart"/>
                  </iterate></with>
               </and>
            </visibleWhen>
         </command>
         <command commandId="org.eclipse.gmf.ecore.editor.CreateShortcutAction">
            <visibleWhen>
               <and>
                  <with variable="activePartId"><equals value="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID"/></with>
                  <with variable="selection"><iterate ifEmpty="false"> 
                     <instanceof value="org.eclipse.gmf.ecore.edit.parts.EPackageEditPart"/>
                  </iterate></with>
               </and>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>

   <extension point="org.eclipse.ui.commands" id="menu-commands">
      <?gmfgen generated="true"?>
      <category id="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID" name="%cmdcategory.name" description="%cmdcategory.desc"/>
      <command id="org.eclipse.gmf.ecore.editor.LoadResourceAction"
         name="Load Resource"
         categoryId="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID"
         defaultHandler="org.eclipse.gmf.ecore.part.LoadResourceAction"/>
      <command id="org.eclipse.gmf.ecore.editor.CreateShortcutAction"
         name="Create Shortcut..."
         categoryId="org.eclipse.gmf.ecore.part.EcoreDiagramEditorID"
         defaultHandler="org.eclipse.gmf.ecore.part.CreateShortcutAction"/>
   </extension>

   <extension point="org.eclipse.ui.handlers" id="menu-handlers">
      <?gmfgen generated="true"?>
   </extension>

</plugin>
