<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
    <copyright>
   
    Copyright (c) 2005, 2011 SAP AG.
    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:
       SAP AG - initial API, implementation and documentation
       Felix Velasco (mwenz) - Bug 323351 - Enable to suppress/reactivate the speed buttons
   
    </copyright>
   
 -->

<plugin>

   <extension-point id="imageProviders" name="%_extension_point_image_providers" schema="schema/imageProviders.exsd"/>
   <extension-point id="diagramTypeProviders" name="%_extension_point_diagram_type_providers" schema="schema/diagramTypeProviders.exsd"/>
   <extension-point id="diagramTypes" name="%_extension_point_diagram_types" schema="schema/diagramTypes.exsd"/>
   <extension-point id="diagramExporters" name="%_extension_point_diagram_exporters" schema="schema/diagramExporters.exsd"/>

   <extension
         point="org.eclipse.ui.views">
          <view
                category="org.eclipse.ui"
                class="org.eclipse.graphiti.ui.internal.editor.ThumbNailView"
                icon="icons/outline/thumbnail.gif"
                id="org.eclipse.graphiti.ui.internal.editor.thumbnailview"
                name="%_thumbnail_view"/>
            <category
                  id="org.eclipse.graphiti.ui.Graphiti_Category"
                  name="%_thumbnail_view_category"/>      
   </extension>

   <extension
         point="org.eclipse.ui.editors">
 	  <editor
          class="org.eclipse.graphiti.ui.editor.DiagramEditor"
          contributorClass="org.eclipse.graphiti.ui.editor.DiagramEditorActionBarContributor"
          default="true"
          extensions="diagram"
          icon="icons/diagram.gif"
          id="org.eclipse.graphiti.ui.editor.DiagramEditor"
          matchingStrategy="org.eclipse.graphiti.ui.editor.DiagramEditorMatchingStrategy"
          name="%_diagram_editor_name">
       <contentTypeBinding
             contentTypeId="org.eclipse.graphiti.content.diagram">
       </contentTypeBinding>
      </editor>
   </extension>

   <extension
         point="org.eclipse.core.contenttype.contentTypes">
      <content-type
            file-extensions="diagram"
            id="org.eclipse.graphiti.content.diagram" 
            name="%_contenttype_diagram">
      </content-type>
   </extension>

   <extension point="org.eclipse.ui.elementFactories" id=".DiagramEditorInputFactory" name="%_diagram_editor_input_factory">
      <factory class="org.eclipse.graphiti.ui.editor.DiagramEditorInputFactory" id="org.eclipse.graphiti.ui.editor.DiagramEditorInputFactory">
      </factory>
   </extension>
   
   <extension
         point="org.eclipse.graphiti.ui.imageProviders">
      <imageProvider
            class="org.eclipse.graphiti.ui.platform.PlatformImageProvider"
            id="org.eclipse.graphiti.ui.platform.PlatformImageProvider">
      </imageProvider>
   </extension>
   <extension
		point="org.eclipse.ui.commands">
		<category
				name="%_key_binding_category"
				description="%_diagram_editor_name"
				id="org.eclipse.graphiti.ui.Graphiti_Category">
		</category>
 		<command
			name="%_command_name_update"
			description="%_command_description_update"
			categoryId="org.eclipse.graphiti.ui.Graphiti_Category"
			id="org.eclipse.graphiti.ui.internal.action.UpdateAction">
		</command>
		<command
			name="%_command_name_remove"
			description="%_command_description_remove"
			categoryId="org.eclipse.graphiti.ui.Graphiti_Category"
			id="org.eclipse.graphiti.ui.internal.action.RemoveAction">
		</command>
		<command
			name="%_command_name_export_diagram"
			description="%_command_description_export_diagram"
			categoryId="org.eclipse.graphiti.ui.Graphiti_Category"
			id="org.eclipse.graphiti.ui.internal.action.SaveImageAction">
		</command>
		<command
			name="%_command_name_toggle_context_pad"
			description="%_command_description_toggle_context_pad"
			categoryId="org.eclipse.graphiti.ui.Graphiti_Category"
			id="org.eclipse.graphiti.ui.internal.action.ToggleContextPadAction">
		</command>
		<command
			categoryId="org.eclipse.graphiti.ui.Graphiti_Category"
			id="org.eclipse.graphiti.ui.featureExecutionCommand"
			name="%_command_name_feature_execution"
			description="%_command_description_feature_execution">
			<commandParameter
				id="org.eclipse.graphiti.ui.featureHint"
				name="%_command_parameter_name_feature_execution_hint"
				optional="false">
			</commandParameter>
		</command>
	</extension>
   <extension point="org.eclipse.ui.bindings">
		<key
			sequence="M1+F5"
			commandId="org.eclipse.graphiti.ui.internal.action.UpdateAction"
			contextId="org.eclipse.graphiti.ui.diagramEditor"
			schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
		<key
			sequence="M2+Delete"
			commandId="org.eclipse.graphiti.ui.internal.action.RemoveAction"
			contextId="org.eclipse.graphiti.ui.diagramEditor"
			schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
		<key
			sequence="M1+O"
			commandId="org.eclipse.graphiti.ui.internal.action.SaveImageAction"
			contextId="org.eclipse.graphiti.ui.diagramEditor"
			schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
	</extension>
	<extension point="org.eclipse.ui.contexts">
		<context
			id="org.eclipse.graphiti.ui.diagramEditor"
			name="Graphiti Diagram"
			parentId="org.eclipse.ui.contexts.window">
		</context>
	</extension>
</plugin>
