<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <!--==========================================-->
   <!-- Free Form and Fixed Form Fortran Editors -->   
   <!--==========================================-->
   <extension
         point="org.eclipse.ui.editors"
         id="org.eclipse.photran.ui.FortranEditor">
         
      <editor
            default="true"
            name="%editor.name"
            icon="icons/full/obj16/f_file_obj.gif"
            class="org.eclipse.photran.internal.ui.editor.FortranEditor"
            contributorClass="org.eclipse.ui.texteditor.BasicTextEditorActionContributor"
            id="org.eclipse.photran.ui.FortranEditor">
         <contentTypeBinding
              contentTypeId="org.eclipse.photran.core.fortranSource" />
      </editor>
   </extension>
   
   <!-- Define a Fortran Editor context -->   
   <extension
            point="org.eclipse.ui.contexts">
          <context
            name="%context.name"
            parentId="org.eclipse.ui.textEditorScope"
            id="org.eclipse.photran.ui.FortranEditorContext">
       </context>
   </extension>

   <!-- Commands, key bindings, and popup menu entries
   
        - Build Project (Ctrl+Shift+B)
        - Comment/Uncomment (Ctrl+/)
        
        Each command should have its ID declared as a constant in AbstractFortranEditor, and
        it must be set up in AbstractFortranEditor#createActions().
        
        For menubarPath, see class ITextEditorActionConstants -->

   <!-- Provide a key binding for the "Build Project" command in the Fortran editor
        (command ID from org.eclipse.ui.IWorkbenchCommandConstants) -->
   <extension
         point="org.eclipse.ui.bindings">
     <key
            sequence="M1+M2+B"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            contextId="org.eclipse.photran.ui.FortranEditorContext"
            commandId="org.eclipse.ui.project.buildProject"
     />
   </extension>

   <extension point="org.eclipse.ui.popupMenus">
	  <viewerContribution 
	        targetID="#FortranEditorContextMenu" 
	        id="org.eclipse.photran.ui.FixedBlockCommentEditorContribution">
	     <action 
	           label="%action.label" 
               definitionId="org.eclipse.photran.ui.CommentCommand"
	           class="org.eclipse.photran.internal.ui.actions.FortranBlockCommentActionDelegate" 
	           menubarPath="group.edit" 
	           id="org.eclipse.photran.ui.BlockCommentMenuAction"/>
	  </viewerContribution>
   </extension>
   <extension
         point="org.eclipse.ui.commands">
      <category
            name="%category.name"
            description="%category.description"
            id="org.eclipse.photran.ui.SourceEditingCategory">
      </category>
      <command
            categoryId="org.eclipse.photran.ui.SourceEditingCategory"
            description="%command.description"
            id="org.eclipse.photran.ui.CommentCommand"
            name="%command.name">
      </command>
   </extension>
   <extension point="org.eclipse.ui.actionSets">
      <actionSet
            label="%actionSet.label"
            description="%actionSet.description"
            visible="false"
            id="org.eclipse.photran.ui.CommentUncomment">
	     <action 
	           label="%action.label.0" 
               menubarPath="org.eclipse.jdt.ui.source.menu/commentGroup"
               definitionId="org.eclipse.photran.ui.CommentCommand"
	           class="org.eclipse.photran.internal.ui.actions.FortranBlockCommentActionDelegate" 
	           id="org.eclipse.photran.ui.BlockCommentAction">
	     </action>
      </actionSet>
   </extension>
   <extension
         point="org.eclipse.ui.actionSetPartAssociations">
      <actionSetPartAssociation targetID="org.eclipse.photran.ui.CommentUncomment">
         <part id="org.eclipse.photran.ui.FortranEditor"/>
      </actionSetPartAssociation>
   </extension>
   <extension
            point="org.eclipse.ui.bindings">
      <!--  win32:  M1=CTRL,    M2=SHIFT, M3=ALT, M4=-
            carbon: M1=COMMAND, M2=SHIFT, M3=ALT, M4=CTRL -->
        <key
            sequence="M1+/"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            contextId="org.eclipse.photran.ui.FortranEditorContext"
            commandId="org.eclipse.photran.ui.CommentCommand"/>
        <key
            sequence="M1+M2+/"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            contextId="org.eclipse.photran.ui.FortranEditorContext"
            commandId="org.eclipse.photran.ui.CommentCommand"/>
   </extension>

   <!-- Define toggling a breakpoint as the default double-click action -->
   <extension
         point="org.eclipse.ui.editorActions">
      <editorContribution
            targetID="org.eclipse.photran.ui.FortranEditor"
            id="org.eclipse.photran.ui.BreakpointRulerAction">
         <action
               label="%action.label.1"
               class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
               actionID="RulerDoubleClick"
               id="org.eclipse.cdt.debug.ui.CEditor.RulerTobbleBreakpointAction">
         </action>
      </editorContribution>
   </extension>
   <!-- Enable CDT breakpoint toggle for Photran's editors and model elements -->
   <extension point="org.eclipse.debug.ui.toggleBreakpointsTargetFactories">
      <toggleTargetFactory
            id="ToggleFortranBreakpointsTargetFactory"
            class="org.eclipse.photran.internal.cdtinterface.ui.editor.CDTToggleBreakpointsTargetFactory">
            <enablement>
            <or>
               <instanceof value="org.eclipse.photran.internal.ui.editor.FortranEditor"/>
            </or>
         </enablement>
      </toggleTargetFactory>
   </extension>
   <!-- Also support PTP parallel breakpoints -->
   <!--extension point="org.eclipse.core.runtime.adapters">
      <factory 
            class="org.eclipse.ptp.debug.internal.ui.actions.RetargettableActionAdapterFactory"
            adaptableType="org.eclipse.photran.internal.ui.editor.FortranEditor">
            <adapter
                type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget">
            </adapter>
            <adapter
                type="org.eclipse.debug.ui.actions.IRunToLineTarget">
            </adapter>
      </factory>
   </extension-->
   
   <!--=============================-->
   <!-- ActionSet-part associations -->
   <!--=============================-->
   <extension
         point="org.eclipse.ui.actionSetPartAssociations">
      <actionSetPartAssociation
            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
         <part id="org.eclipse.photran.ui.FortranEditor"/>
      </actionSetPartAssociation>      
   </extension>

   <!--=============-->
   <!-- Source Menu -->
   <!--=============-->
   <extension point="org.eclipse.ui.menus">
      <menuContribution
            locationURI="menu:org.eclipse.ui.main.menu?after=edit">
         <menu
               label="&amp;Source"
               id="org.eclipse.jdt.ui.source.menu">
            <visibleWhen checkEnabled="false">
               <iterate operator="or">
                   <adapt type="org.eclipse.jface.text.ITextSelection">
                     <test property="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"/>
                   </adapt>
               </iterate>
            </visibleWhen>
         <!-- Menu mimicks org.eclipse.jdt.ui's (as does CDT's Refactor menu)
              http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.ui/plugin.xml?view=markup -->
            <separator name="commentGroup" />
            <separator name="editGroup" />
            <command
                  commandId="org.eclipse.ui.edit.text.shiftRight"
                  label="&amp;Shift Right"
                  style="push">
            </command>
            <command
                  commandId="org.eclipse.ui.edit.text.shiftLeft"
                  label="S&amp;hift Left"
                  style="push">
            </command>
            <separator name="importGroup" />
            <separator name="generateGroup" />
            <separator name="codeGroup" />
            <separator name="externalizeGroup" />
            <separator name="convertGroup" />
            <separator name="additions" />
         </menu>
      </menuContribution>
   </extension>

   <!--========================-->
   <!-- Fortran code templates -->
   <!--========================-->
   <extension point="org.eclipse.ui.editors.templates">
      <contextType
         name="Fortran"
         class="org.eclipse.photran.internal.ui.editor.FortranTemplateContext"
         id="org.eclipse.photran.ui.template.context" />
      <include
         file="templates/defaults.xml" />
   </extension>

   <!--===================================-->
   <!-- Fortran-specific preference pages -->
   <!--===================================-->
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            name="%page.name"
            class="org.eclipse.photran.internal.ui.preferences.MainFortranPreferencePage"
            id="org.eclipse.photran.ui.MainFortranPreferencePage">
      </page>
      <page
            name="%page.name.0"
            category="org.eclipse.photran.ui.MainFortranPreferencePage"
            class="org.eclipse.photran.internal.ui.preferences.EditorPreferencePage"
            id="org.eclipse.photran.ui.FortranEditorPreferencePage">
      </page>
      <page
            name="%page.name.1"
            category="org.eclipse.photran.ui.MainFortranPreferencePage"
            class="org.eclipse.photran.internal.ui.preferences.CDTFortranPreferencePage"
            id="org.eclipse.photran.ui.CDTFortranPreferencePage">
      </page>
      <page
            name="Templates"
            category="org.eclipse.photran.ui.MainFortranPreferencePage"
            class="org.eclipse.photran.internal.ui.preferences.FortranTemplatesPreferencePage"
            id="org.eclipse.photran.ui.FortranTemplatesPreferencePage">
      </page>
   </extension>

   <!--=========================================-->
   <!-- Fortran-specific project property pages -->
   <!--=========================================-->
   <extension
         point="org.eclipse.ui.propertyPages">
      <page
            class="org.eclipse.photran.internal.ui.properties.Page_head_general"
            id="org.eclipse.photran.ui.newui.Page_head_general"
            name="%page.name.2"
            >
         <!--filter
               name="projectNature"
               value="org.eclipse.cdt.core.cnature">
         </filter-->
         <filter
               name="projectNature"
               value="org.eclipse.photran.core.fnature">
         </filter>
         <enabledWhen>
             <adapt
                   type="org.eclipse.core.resources.IProject">
             </adapt>
         </enabledWhen>
      </page>
      <page
            name="%page.name.3"
            class="org.eclipse.photran.internal.ui.properties.SourceFormPropertyPage"
            id="org.eclipse.photran.ui.SourceFormPropertyPage"
            category="org.eclipse.photran.ui.newui.Page_head_general">
         <filter
               name="projectNature"
               value="org.eclipse.photran.core.fnature">
         </filter>
         <enabledWhen>
             <adapt
                   type="org.eclipse.core.resources.IProject">
             </adapt>
         </enabledWhen>
      </page>
   </extension>

   <!--=============================================-->
   <!-- Source Viewer Configuration Extension Point -->
   <!--=============================================-->
   <extension-point
      id="sourceViewerConfig"
      name="%source-viewer-config-extension-point.name"
      schema="schema/sourceViewerConfig.exsd"/>

   <!--=============================================-->
   <!-- API Help Provider Extension Point -->
   <!--=============================================-->
   <extension-point
      id="apiHelpProvider"
      name="%api-help-provider-extension-point.name"
      schema="schema/apiHelpProvider.exsd"/>

   <!--==============================================-->
   <!-- Image Associated with Fortran Project Nature -->
   <!--==============================================-->
   <extension
         point="org.eclipse.ui.ide.projectNatureImages">
      <image
            icon="icons/full/obj16/f_ovr.gif"
            natureId="org.eclipse.photran.core.fnature"
            id="org.eclipse.photran.ui.fProjectNatureImage">
      </image>
   </extension>

   <!--==============-->
   <!-- Welcome Page -->
   <!--==============-->

   <!--Intro Overview page addition -->
   <extension
         point="org.eclipse.ui.intro.configExtension">
      <configExtension
            content="intro/overviewContent.xml"
            configId="org.eclipse.ui.intro.universalConfig">
      </configExtension>
   </extension>

   <!-- Show the release notes in a Web browser on first load -->
   <!--extension point="org.eclipse.ui.startup">
     <startup class="org.eclipse.photran.internal.ui.startup.ShowReleaseNotes" />
  </extension-->

</plugin>
