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

<plugin>

  <extension point="org.eclipse.ui.editors">
    <editor class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
      contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor" default="true" extensions="proto"
      icon="icons/pb.gif" id="com.google.eclipse.protobuf.Protobuf" name="%editor.name">
    </editor>
  </extension>
  <extension point="org.eclipse.ui.handlers">
    <handler
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
      commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
      <activeWhen>
        <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
        </reference>
      </activeWhen>
    </handler>
    <handler
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
      commandId="com.google.eclipse.protobuf.Protobuf.validate">
      <activeWhen>
        <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
        </reference>
      </activeWhen>
    </handler>
    <handler
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.commands.SmartSemicolonHandler"
      commandId="com.google.eclipse.protobuf.ui.smartSemicolon">
      <activeWhen>
        <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
        </reference>
      </activeWhen>
    </handler>
  </extension>
  <extension point="org.eclipse.core.expressions.definitions">
    <definition id="com.google.eclipse.protobuf.Protobuf.Editor.opened">
      <and>
        <reference definitionId="isActiveEditorAnInstanceOfXtextEditor" />
        <with variable="activeEditor">
          <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" value="com.google.eclipse.protobuf.Protobuf"
            forcePluginActivation="true" />
        </with>
      </and>
    </definition>
  </extension>
  <extension point="org.eclipse.ui.preferencePages">
    <page
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.RootPreferencePage"
      id="com.google.eclipse.protobuf.Protobuf" name="%page.name">
      <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" />
    </page>
    <page category="com.google.eclipse.protobuf.Protobuf"
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
      id="com.google.eclipse.protobuf.Protobuf.coloring" name="%page.name.0">
      <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" />
    </page>
    <page category="com.google.eclipse.protobuf.Protobuf"
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
      id="com.google.eclipse.protobuf.Protobuf.templates" name="%page.name.1">
      <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" />
    </page>
    <page category="com.google.eclipse.protobuf.Protobuf"
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.compiler.CompilerPreferencePage"
      id="com.google.eclipse.protobuf.ui.preferences.compiler.CompilerPreferencePage" name="%page.name.2">
      <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" />
    </page>
    <page category="com.google.eclipse.protobuf.Protobuf"
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.paths.PathsPreferencePage"
      id="com.google.eclipse.protobuf.ui.preferences.paths.PathsPreferencePage" name="%page.name.3">
      <keywordReference id="com.google.eclipse.protobuf.ui.keyword_Protobuf" />
    </page>
  </extension>
  <extension point="org.eclipse.ui.keywords">
    <keyword id="com.google.eclipse.protobuf.ui.keyword_Protobuf" label="%keyword.label" />
  </extension>
  <extension point="org.eclipse.ui.commands">
    <command description="%command.description" id="com.google.eclipse.protobuf.Protobuf.validate" name="%command.name">
    </command>
  </extension>
  <extension point="org.eclipse.ui.menus">
    <menuContribution locationURI="popup:#TextEditorContext?after=group.edit">
      <command commandId="com.google.eclipse.protobuf.Protobuf.validate" style="push" tooltip="%command.tooltip">
        <visibleWhen checkEnabled="false">
          <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
          </reference>
        </visibleWhen>
      </command>
    </menuContribution>
  </extension>
  <extension point="org.eclipse.ui.menus">
    <menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
      <command commandId="org.eclipse.xtext.ui.editor.FindReferences">
        <visibleWhen checkEnabled="false">
          <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
          </reference>
        </visibleWhen>
      </command>
    </menuContribution>
  </extension>
  <extension point="org.eclipse.ui.handlers">
    <handler
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
      commandId="org.eclipse.xtext.ui.editor.FindReferences">
      <activeWhen>
        <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
        </reference>
      </activeWhen>
    </handler>
  </extension>

  <!-- adding resource factories -->
  <extension point="org.eclipse.emf.ecore.extension_parser">
    <parser
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
      type="proto">
    </parser>
  </extension>
  <extension point="org.eclipse.xtext.extension_resourceServiceProvider">
    <resourceServiceProvider
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
      uriExtension="proto">
    </resourceServiceProvider>
  </extension>

  <!-- Quick Outline -->
  <extension point="org.eclipse.ui.handlers">
    <handler
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
      commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
      <activeWhen>
        <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
        </reference>
      </activeWhen>
    </handler>
  </extension>
  <extension point="org.eclipse.ui.commands">
    <command description="%command.description.0" id="org.eclipse.xtext.ui.editor.outline.QuickOutline" name="%command.name.0">
    </command>
    <command categoryId="org.eclipse.ui.category.textEditor" description="%command.description.1"
      id="com.google.eclipse.protobuf.ui.smartSemicolon" name="%command.name.1">
    </command>
  </extension>
  <extension point="org.eclipse.ui.menus">
    <menuContribution locationURI="popup:#TextEditorContext?after=group.open">
      <command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline" style="push" tooltip="%command.tooltip.0">
        <visibleWhen checkEnabled="false">
          <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened" />
        </visibleWhen>
      </command>
    </menuContribution>
  </extension>

  <!-- quickfix marker resolution generator -->
  <extension point="org.eclipse.ui.ide.markerResolution">
    <markerResolutionGenerator
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator">
    </markerResolutionGenerator>
  </extension>
  <extension point="org.eclipse.ui.bindings">
    <key commandId="com.google.eclipse.protobuf.ui.smartSemicolon" contextId="org.eclipse.xtext.ui.XtextEditorScope"
      schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" sequence=";">
    </key>
  </extension>
  <extension point="org.eclipse.ui.propertyPages">
    <page
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.RootPreferencePage"
      id="com.google.eclipse.protobuf.Protobuf"
      name="%page.name" selectionFilter="single">
    </page>
    <page
          category="com.google.eclipse.protobuf.Protobuf"
          class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.compiler.CompilerPreferencePage"
          id="com.google.eclipse.protobuf.ui.properties.compiler.PropertyPage"
          name="%page.name.2"
          selectionFilter="single">
    </page>
    <page
          category="com.google.eclipse.protobuf.Protobuf"
          class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.preferences.paths.PathsPreferencePage"
          id="com.google.eclipse.protobuf.ui.properties.paths.PropertyPage"
          name="%page.name.3"
          selectionFilter="single">
    </page>
  </extension>
  <extension point="org.eclipse.xtext.builder.participant">
    <participant
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:com.google.eclipse.protobuf.ui.builder.ProtobufBuildParticipant">
    </participant>
  </extension>
  <extension id="protocMarker" name="%protoc.marker.name" point="org.eclipse.core.resources.markers">
    <super type="org.eclipse.core.resources.problemmarker">
    </super>
    <super type="org.eclipse.core.resources.textmarker">
    </super>
    <persistent value="true">
    </persistent>
  </extension>
  
  <!-- Rename Refactoring -->
  <extension point="org.eclipse.ui.handlers">
    <handler
      class="com.google.eclipse.protobuf.ui.ProtobufExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RenameElementHandler"
      commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
      <activeWhen>
        <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
        </reference>
      </activeWhen>
    </handler>
  </extension>
  <extension point="org.eclipse.ui.menus">
    <menuContribution locationURI="popup:#TextEditorContext?after=group.edit">
      <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement" style="push">
        <visibleWhen checkEnabled="false">
          <reference definitionId="com.google.eclipse.protobuf.Protobuf.Editor.opened">
          </reference>
        </visibleWhen>
      </command>
    </menuContribution>
  </extension>
</plugin>
