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

    
<!-- ================================================================== -->
<!--         org.eclipse.ui.examples.readmetool.IReadmeFileParser       -->
<!-- Extension Implementation: must implement                           -->
<!--          the file's section and subsection structure               -->
<!-- Purpose: Provide a custom parser for Readme files which determines -->
<!-- Extension point: org.eclipse.ui.examples.readmetool.sectionParser  -->
<!-- ================================================================== -->
   <extension-point id="sectionParser" name="%ExtPoint.sectionParser"/>

   <extension
         point="org.eclipse.ui.examples.readmetool.sectionParser">
      <parser
            name="%SectionParser.name"
            class="org.eclipse.ui.examples.readmetool.DefaultSectionsParser"
            id="org.eclipse.ui.examples.readmetool.DefaultSectionsParser">
      </parser>
   </extension>
   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            label="%ActionSet.name"
            visible="false"
            id="org_eclipse_ui_examples_readmetool_actionSet">
         <menu
               label="%ActionSet.menu"
               path="window/additions"
               id="org_eclipse_ui_examples_readmetool">
            <separator
                  name="slot1">
            </separator>
            <separator
                  name="slot2">
            </separator>
            <separator
                  name="slot3">
            </separator>
         </menu>
         <action
               id="org_eclipse_ui_examples_readmetool_readmeAction"
               toolbarPath="readme"
               class="org.eclipse.ui.examples.readmetool.WindowActionDelegate"
               enablesFor="1"
               icon="$nl$/icons/ctool16/openbrwsr.gif"
               helpContextId="org.eclipse.ui.examples.readmetool.open_browser_action_context"
               label="%ReadmeAction.label"
               menubarPath="window/org_eclipse_ui_examples_readmetool/slot1"
               tooltip="%ReadmeAction.tooltip">
            <selection
                  name="*.readme"
                  class="org.eclipse.core.resources.IFile">
            </selection>
         </action>
         <action
               label="%ReadmeRetargetAction.label"
               icon="$nl$/icons/ctool16/openbrwsr.gif"
               helpContextId="org.eclipse.ui.examples.readmetool.open_browser_action_context"
               tooltip="%ReadmeRetargetAction.tooltip"
               retarget="true"
               menubarPath="window/org_eclipse_ui_examples_readmetool/slot1"
               toolbarPath="readme"
               id="org_eclipse_ui_examples_readmetool_readmeRetargetAction">
         </action>
         <action
               allowLabelUpdate="true"
               id="org_eclipse_ui_examples_readmetool_readmeRelabelRetargetAction"
               toolbarPath="readme"
               icon="$nl$/icons/ctool16/openbrwsr.gif"
               helpContextId="org.eclipse.ui.examples.readmetool.open_browser_action_context"
               label="%ReadmeRelabelRetargetAction.label"
               menubarPath="window/org_eclipse_ui_examples_readmetool/slot1"
               retarget="true"
               tooltip="%ReadmeRelabelRetargetAction.tooltip">
         </action>
      </actionSet>
   </extension>
   <extension
         point="org.eclipse.ui.newWizards">
      <category
            name="%NewWizard.category"
            parentCategory="org.eclipse.ui.Examples"
            id="org.eclipse.ui.examples.readmetool.new">
      </category>
      <wizard
            name="%NewWizard.name"
            icon="$nl$/icons/obj16/newreadme_wiz.gif"
            category="org.eclipse.ui.Examples/org.eclipse.ui.examples.readmetool.new"
            class="org.eclipse.ui.examples.readmetool.ReadmeCreationWizard"
            id="org.eclipse.ui.examples.readmetool.wizards.new.file">
         <description>
            %NewWizard.desc
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
   </extension>
   <extension
         point="org.eclipse.ui.editors">
      <editor
            name="%Editors.ReadmeEditor"
            icon="$nl$/icons/obj16/editor.gif"
            extensions="readme"
            contributorClass="org.eclipse.ui.examples.readmetool.ReadmeEditorActionBarContributor"
            class="org.eclipse.ui.examples.readmetool.ReadmeEditor"
            id="org.eclipse.ui.examples.readmetool.ReadmeEditor">
      </editor>
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <category
            name="%Views.category"
            id="org.eclipse.ui.examples.readmetool">
      </category>
      <view
            name="%Views.ReadmeSections"
            icon="$nl$/icons/view16/sections.gif"
            category="org.eclipse.ui.examples.readmetool"
            class="org.eclipse.ui.examples.readmetool.ReadmeSectionsView"
            id="org.eclipse.ui.examples.readmetool.views.SectionsView">
      </view>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            name="%PreferencePage.name"
            class="org.eclipse.ui.examples.readmetool.ReadmePreferencePage"
            id="org.eclipse.ui.examples.readmetool.Page1">
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.propertyPages">
      <page
            name="%PropertiesPage.filePage"
            nameFilter="*.readme"
            class="org.eclipse.ui.examples.readmetool.ReadmeFilePropertyPage"
            id="org.eclipse.ui.examples.readmetool.FilePage">
         <enabledWhen>
            <instanceof
                  value="org.eclipse.core.resources.IFile">
            </instanceof>
         </enabledWhen>
      </page>
      <page
            name="%PropertiesPage.filePage2"
            nameFilter="*.readme"
            class="org.eclipse.ui.examples.readmetool.ReadmeFilePropertyPage2"
            id="org.eclipse.ui.examples.readmetool.FilePage2">
         <enabledWhen>
            <instanceof
                  value="org.eclipse.core.resources.IFile">
            </instanceof>
         </enabledWhen>
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.readme"
            id="org.eclipse.ui.examples.readmetool">
         <action
               label="%PopupMenus.action"
               icon="$nl$/icons/ctool16/openbrwsr.gif"
               helpContextId="org.eclipse.ui.examples.readmetool.open_browser_action_context"
               class="org.eclipse.ui.examples.readmetool.PopupMenuActionDelegate"
               menubarPath="additions"
               enablesFor="1"
               id="org.eclipse.ui.examples.readmetool.action1">
         </action>
      </objectContribution>
      <viewerContribution
            targetID="org.eclipse.ui.examples.readmetool.outline"
            id="org.eclipse.ui.examples.readmetool2">
         <action
               label="%PopupMenus.action"
               icon="$nl$/icons/ctool16/openbrwsr.gif"
               helpContextId="org.eclipse.ui.examples.readmetool.open_browser_action_context"
               class="org.eclipse.ui.examples.readmetool.ViewActionDelegate"
               menubarPath="additions"
               id="org.eclipse.ui.examples.readmetool.action1">
         </action>
      </viewerContribution>
   </extension>
   <extension
         point="org.eclipse.ui.viewActions">
      <viewContribution
            targetID="org.eclipse.ui.navigator.ProjectExplorer"
            id="org.eclipse.ui.examples.readmetool.vc1">
         <action
               id="org.eclipse.ui.examples.readmetool.va1"
               toolbarPath="additions"
               class="org.eclipse.ui.examples.readmetool.ViewActionDelegate"
               enablesFor="1"
               icon="$nl$/icons/obj16/editor.gif"
               helpContextId="org.eclipse.ui.examples.readmetool.view_action_context"
               label="%PopupMenu.ResourceNav.label"
               menubarPath="additions"
               tooltip="%PopupMenu.ResourceNav.tooltip">
            <selection
                  name="*.readme"
                  class="org.eclipse.core.resources.IFile">
            </selection>
         </action>
      </viewContribution>
   </extension>
   <extension
         point="org.eclipse.ui.editorActions">
      <editorContribution
            targetID="org.eclipse.ui.examples.readmetool.ReadmeEditor"
            id="org.eclipse.ui.examples.readmetool.ec1">
         <action
               label="%Editors.Action.label"
               icon="$nl$/icons/obj16/editor.gif"
               tooltip="%Editors.Action.tooltip"
               class="org.eclipse.ui.examples.readmetool.EditorActionDelegate"
               toolbarPath="ReadmeEditor"
               id="org.eclipse.ui.examples.readmetool.ea1">
         </action>
      </editorContribution>
   </extension>
   <extension
         point="org.eclipse.help.contexts">
      <contexts
            file="HelpContexts.xml">
      </contexts>
   </extension>
   <extension
         point="org.eclipse.ui.dropActions">
      <action
            class="org.eclipse.ui.examples.readmetool.ReadmeDropActionDelegate"
            id="org_eclipse_ui_examples_readmetool_drop_actions">
      </action>
   </extension>
   <extension
         id="readmemarker"
         name="%ReadmeMarker.name"
         point="org.eclipse.core.resources.markers">
      <super
            type="org.eclipse.core.resources.taskmarker">
      </super>
      <super
            type="org.eclipse.core.resources.textmarker">
      </super>
      <persistent
            value="true">
      </persistent>
      <attribute
            name="org.eclipse.ui.examples.readmetool.id">
      </attribute>
      <attribute
            name="org.eclipse.ui.examples.readmetool.level">
      </attribute>
      <attribute
            name="org.eclipse.ui.examples.readmetool.department">
      </attribute>
      <attribute
            name="org.eclipse.ui.examples.readmetool.code">
      </attribute>
      <attribute
            name="org.eclipse.ui.examples.readmetool.language">
      </attribute>
   </extension>
   <extension
         point="org.eclipse.ui.ide.markerHelp">
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example1_context">
         <attribute
               name="org.eclipse.ui.examples.readmetool.id"
               value="1234">
         </attribute>
      </markerHelp>
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example2_context">
         <attribute
               name="org.eclipse.ui.examples.readmetool.level"
               value="7">
         </attribute>
      </markerHelp>
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example3_context">
         <attribute
               name="org.eclipse.ui.examples.readmetool.level"
               value="7">
         </attribute>
         <attribute
               name="org.eclipse.ui.examples.readmetool.department"
               value="infra">
         </attribute>
      </markerHelp>
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example4_context">
         <attribute
               name="org.eclipse.ui.examples.readmetool.code"
               value="red">
         </attribute>
      </markerHelp>
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example5_context">
         <attribute
               name="org.eclipse.ui.examples.readmetool.language"
               value="english">
         </attribute>
      </markerHelp>
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example6_context">
         <attribute
               name="org.eclipse.ui.examples.readmetool.id"
               value="1234">
         </attribute>
         <attribute
               name="org.eclipse.ui.examples.readmetool.level"
               value="7">
         </attribute>
         <attribute
               name="org.eclipse.ui.examples.readmetool.department"
               value="infra">
         </attribute>
         <attribute
               name="org.eclipse.ui.examples.readmetool.code"
               value="red">
         </attribute>
         <attribute
               name="org.eclipse.ui.examples.readmetool.language"
               value="english">
         </attribute>
      </markerHelp>
      <markerHelp
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            helpContextId="org.eclipse.ui.examples.readmetool.marker_example7_context">
      </markerHelp>
   </extension>
   <extension
         point="org.eclipse.ui.ide.markerResolution">
      <markerResolutionGenerator
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            class="org.eclipse.ui.examples.readmetool.ReadmeMarkerResolutionGenerator">
         <attribute
               name="org.eclipse.ui.examples.readmetool.id"
               value="1234">
         </attribute>
      </markerResolutionGenerator>
      <markerResolutionGenerator
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            class="org.eclipse.ui.examples.readmetool.ReadmeMarkerResolutionGenerator">
         <attribute
               name="org.eclipse.ui.examples.readmetool.level"
               value="7">
         </attribute>
      </markerResolutionGenerator>
      <markerResolutionGenerator
            markerType="org.eclipse.ui.examples.readmetool.readmemarker"
            class="org.eclipse.ui.examples.readmetool.ReadmeMarkerResolutionGenerator">
         <attribute
               name="org.eclipse.ui.examples.readmetool.code"
               value="red">
         </attribute>
         <attribute
               name="org.eclipse.ui.examples.readmetool.language"
               value="english">
         </attribute>
      </markerResolutionGenerator>
   </extension>
   <extension
         point="org.eclipse.core.runtime.preferences">
      <initializer class="org.eclipse.ui.examples.readmetool.ReadmePreferenceInitializer"/>
   </extension>
   <extension
         point="org.eclipse.ui.actionSetPartAssociations">
      <actionSetPartAssociation targetID="org_eclipse_ui_examples_readmetool_actionSet">
         <part id="org.eclipse.ui.examples.readmetool.ReadmeEditor"/>
      </actionSetPartAssociation>
   </extension>

</plugin>
