<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
   <!--======================-->
   <!-- CDT Core Integration -->
   <!--======================-->
   <extension
         point="org.eclipse.cdt.core.language">
      <language
            class="org.eclipse.photran.internal.cdtinterface.core.FortranLanguage"
            id="org.eclipse.photran.cdtinterface.fortran"
            name="%language.name">
         <contentType id="org.eclipse.photran.core.fortranSource"/>
      </language>
   </extension>

   <!--==================-->
   <!-- CDT Launch Clone -->
   <!--==================-->

   <!-- Fortran Launch Configuration (visible in "Run..." dialog)-->
   <extension
         point="org.eclipse.debug.core.launchConfigurationTypes">
      <launchConfigurationType
            sourceLocatorId="org.eclipse.cdt.debug.core.sourceLocator"
            delegate="org.eclipse.photran.internal.cdtinterface.launch.FortranCDILaunchDelegate"
            public="true"
            sourcePathComputerId="org.eclipse.cdt.debug.core.sourcePathComputer"
            name="%launchConfigurationType.name"
            id="org.eclipse.photran.launch.localCLaunch"
            modes="run,debug">
      </launchConfigurationType>
   </extension>
   <extension
         point="org.eclipse.debug.ui.launchConfigurationTypeImages">
      <launchConfigurationTypeImage
            icon="icons/obj16/f_app.gif"
            configTypeID="org.eclipse.photran.launch.localCLaunch"
            id="org.eclipse.photran.launch.localRunLaunchImage">
      </launchConfigurationTypeImage>
   </extension>
   <extension
         point="org.eclipse.debug.ui.launchConfigurationTabGroups">
      <launchConfigurationTabGroup
            type="org.eclipse.photran.launch.localCLaunch"
            class="org.eclipse.photran.internal.cdtinterface.launch.FortranLocalRunLaunchConfigurationTabGroup"
            id="org.eclipse.photran.launch.localRunLaunchTabGroup">
      </launchConfigurationTabGroup>
   </extension>
   <!-- Fortran Application Launch Shortcut (Run As > Local Fortran Application) -->
   <extension
         point="org.eclipse.debug.ui.launchShortcuts">
      <shortcut
            label="%shortcut.label"
            icon="icons/obj16/f_app.gif"
            modes="run, debug"
            class="org.eclipse.photran.internal.cdtinterface.launch.CApplicationLaunchShortcut"
            id="org.eclipse.photran.debug.ui.localCShortcut">
         <contextualLaunch>
           <enablement>
             <with variable="selection">
               <count value="1"/>
               <iterate>
                   <or>
                     <instanceof value="org.eclipse.cdt.core.model.IBinary"/>
                     <instanceof value="org.eclipse.cdt.core.model.ICProject"/>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.cdt.launch.isExecutable"/>
                     <test
                           forcePluginActivation="true"
                           property="org.eclipse.cdt.launch.isCProject"/>
                     <and>
                       <instanceof value="org.eclipse.ui.IFileEditorInput"/>
                       <adapt type="org.eclipse.core.resources.IResource">
                         <adapt type="org.eclipse.cdt.core.model.ICElement"/>
                       </adapt>
                     </and>
                   </or>
               </iterate>
             </with>
           </enablement>
         </contextualLaunch>
         <description
             mode="run"
             description="%description.description"/>
          <description
             mode="debug"
             description="%description.description.0"/>
         <configurationType
               id="org.eclipse.photran.launch.localCLaunch">
         </configurationType>
       </shortcut>
   </extension>

   <!--==============-->
   <!-- CDT UI Clone -->
   <!--==============-->

   <!-- Fortran Perspective -->
   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            name="%perspective.name"
            icon="icons/etool16/f_pers.gif"
            class="org.eclipse.photran.internal.cdtinterface.ui.FortranPerspectiveFactory"
            id="org.eclipse.photran.ui.FortranPerspective">
      </perspective>
   </extension>
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension targetID="org.eclipse.photran.ui.FortranPerspective">
         <perspectiveShortcut id="org.eclipse.debug.ui.DebugPerspective"/>
         <perspectiveShortcut id="org.eclipse.team.ui.TeamSynchronizingPerspective"/>
         <view
               id="org.eclipse.cdt.make.ui.views.MakeView"
               relationship="stack"
               relative="org.eclipse.ui.views.ContentOutline"
               visible="true"/>
         <viewShortcut id="org.eclipse.cdt.make.ui.views.MakeView"/>
         <actionSet id="org.eclipse.cdt.make.ui.makeTargetActionSet"/>

	 <!-- Copied from CDT UI for CDT 4.0 -->
         <actionSet id="org.eclipse.debug.ui.launchActionSet"/>
         <actionSet id="org.eclipse.cdt.ui.buildConfigActionSet"/>
         <actionSet id="org.eclipse.cdt.ui.NavigationActionSet"/>
         <actionSet id="org.eclipse.cdt.ui.OpenActionSet"/>
         <actionSet id="org.eclipse.ui.edit.text.actionSet.presentation"/>
         <!--showInPart id="org.eclipse.cdt.ui.includeBrowser"/-->
         <!--showInPart id="org.eclipse.cdt.ui.CView"/-->
         <!--showInPart id="org.eclipse.ui.navigator.ProjectExplorer"/-->
         <viewShortcut id="org.eclipse.ui.navigator.ProjectExplorer"/>
         <viewShortcut id="org.eclipse.cdt.ui.includeBrowser"/>
      </perspectiveExtension>
   </extension>

   <!-- Fortran Projects View -->
   <extension
         point="org.eclipse.ui.views">
      <category
            name="%category.name"
            id="org.eclipse.photran.ui.views">
      </category>
      <view
            name="%view.name"
            icon="icons/etool16/fview.gif"
            category="org.eclipse.photran.ui.views"
            class="org.eclipse.photran.internal.cdtinterface.ui.FortranView"
            id="org.eclipse.photran.ui.FortranView">
      </view>
   </extension>

   <!-- Fortran Wizards -->
   <extension
         point="org.eclipse.ui.newWizards">
      <category
            name="%category.name.0"
            id="org.eclipse.photran.ui.newFortranWizards" />

      <!-- New Fortran Project Wizards -->

      <!-- CDT 4.0 and later -->
       <wizard
             canFinishEarly="false"
             category="org.eclipse.photran.ui.newFortranWizards"
             class="org.eclipse.photran.internal.cdtinterface.ui.FortranProjectWizard"
             finalPerspective="org.eclipse.photran.ui.FortranPerspective"
             hasPages="true"
             icon="icons/etool16/newfortran_app.gif"
             id="org.eclipse.photran.ui.wizards.CDT4FortranProjectWizard"
             name="%wizard.name"
             project="true">
         <description>
             %wizard.description
         </description>
      </wizard>

      <!-- New File Wizards -->
      <wizard
            name="%wizard.name.0"
            icon="icons/etool16/newfortranfile_wiz.gif"
            category="org.eclipse.photran.ui.newFortranWizards"
            finalPerspective="org.eclipse.photran.ui.FortranPerspective"
            id="org.eclipse.photran.ui.wizards.NewSourceFileCreationWizard">
         <class class="org.eclipse.photran.internal.cdtinterface.ui.NewSourceFileCreationWizard">
            <parameter name="cfile" value="true"/>
         </class>
         <description>
            %wizard.description.0
         </description>
      </wizard>
      <wizard
            name="%wizard.name.1"
            icon="icons/etool16/newfile_wiz.gif"
            category="org.eclipse.photran.ui.newFortranWizards"
            finalPerspective="org.eclipse.photran.ui.FortranPerspective"
            id="org.eclipse.photran.ui.wizards.NewFileCreationWizard">
         <class class="org.eclipse.cdt.ui.wizards.NewFileCreationWizard">
            <parameter name="cfile" value="true"/>
         </class>
         <description>
            %wizard.description.1
         </description>
      </wizard>
      <wizard
            name="%wizard.name.2"
            icon="icons/etool16/newsrcfldr_wiz.gif"
            category="org.eclipse.photran.ui.newFortranWizards"
            finalPerspective="org.eclipse.photran.ui.FortranPerspective"
            id="org.eclipse.photran.ui.wizards.NewSourceFolderCreationWizard">
         <class class="org.eclipse.photran.internal.cdtinterface.ui.NewSourceFolderCreationWizard">
            <parameter name="cfolder" value="true"/>
         </class>
         <description>
            %wizard.description.2
         </description>
      </wizard>
      <wizard
            name="%wizard.name.3"
            icon="icons/etool16/newfolder_wiz.gif"
            category="org.eclipse.photran.ui.newFortranWizards"
            finalPerspective="org.eclipse.photran.ui.FortranPerspective"
            id="org.eclipse.photran.ui.wizards.NewFolderCreationWizard">
         <class class="org.eclipse.cdt.ui.wizards.NewFolderCreationWizard">
            <parameter name="cfolder" value="true"/>
         </class>
         <description>
            %wizard.description.3
         </description>
      </wizard>
   </extension>
   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            description="%actionSet.description"
            id="org.eclipse.photran.cdtinterface.FortranElementCreationActionSet"
            label="%actionSet.label"
            visible="false">
         <action
               class="org.eclipse.photran.internal.cdtinterface.ui.NewFileDropDownAction"
               icon="icons/etool16/newfortranfile_wiz.gif"
               id="org.eclipse.photran.cdtinterface.actions.NewFileDropDown"
               label="%action.label"
               style="pulldown"
               toolbarPath="Normal/FortranWizards"
               tooltip="%action.tooltip"/>
         <action
               class="org.eclipse.photran.internal.cdtinterface.ui.NewFolderDropDownAction"
               icon="icons/etool16/newsrcfldr_wiz.gif"
               id="org.eclipse.photran.cdtinterface.actions.NewFolderDropDown"
               label="%action.label.0"
               style="pulldown"
               toolbarPath="Normal/FortranWizards"
               tooltip="%action.tooltip.0"/>
         <action
               class="org.eclipse.photran.internal.cdtinterface.ui.NewProjectDropDownAction"
               icon="icons/etool16/newfortran_app.gif"
               id="org.eclipse.photran.cdtinterface.actions.NewProjectDropDown"
               label="%action.label.1"
               style="pulldown"
               toolbarPath="Normal/FortranWizards"
               tooltip="%action.tooltip.1"/>
      </actionSet>
   </extension>

   <!--====================-->
   <!-- New File Templates -->
   <!--====================-->

   <extension
         point="org.eclipse.ui.editors.templates">
      <!--contextType
            name="%c.contextType.name"
            class="org.eclipse.cdt.internal.corext.template.c.CContextType"
            id="org.eclipse.cdt.ui.text.templates.c">
      </contextType-->
      <include file="templates/fortran-codetemplates.xml" />
   </extension>

   <!--=======================-->
   <!-- New Project Templates -->
   <!--=======================-->

   <extension point="org.eclipse.cdt.core.templates">
      <!-- Templates -->
      <template
            filterPattern=".*"
            id="org.eclipse.photran.projects.EmptyFortranProject"
            location="templates/EmptyFortranProject/template.xml"
            projectType="org.eclipse.cdt.build.makefile.projectType">
      </template>
      <template
            filterPattern=".*"
            id="org.eclipse.photran.projects.HelloWorldFortranProject"
            location="templates/HelloWorldFortranProject/template.xml"
            projectType="org.eclipse.cdt.build.makefile.projectType">
      </template>
      <template
            filterPattern=".*"
            id="org.eclipse.photran.projects.MPIHelloWorldFortranProject"
            location="templates/MPIHelloWorldFortranProject/template.xml"
            projectType="org.eclipse.cdt.build.makefile.projectType">
      </template>
      <template
            filterPattern=".*"
            id="org.eclipse.photran.projects.MPIPiFortranProject"
            location="templates/MPIPiFortranProject/template.xml"
            projectType="org.eclipse.cdt.build.makefile.projectType">
      </template>
   </extension>
   <!-- Custom Process Runners (referenced in template.xml files) -->
   <extension point="org.eclipse.cdt.core.templateProcessTypes">
      <processType
            name="addFortranErrorParsers"
            processRunner="org.eclipse.photran.internal.cdtinterface.templates.AddFortranErrorParsersProcessRunner">
      </processType>
      <processType
            name="addAllBinaryParsers"
            processRunner="org.eclipse.photran.internal.cdtinterface.templates.AddAllBinaryParsersProcessRunner">
      </processType>
   </extension>


   <!--=============================-->
   <!-- ActionSet-part associations -->
   <!--=============================-->
   <extension
         point="org.eclipse.ui.actionSetPartAssociations">
      <actionSetPartAssociation
            targetID="org.eclipse.cdt.ui.SearchActionSet">
         <part id="org.eclipse.photran.ui.FortranView"/>
         <part id="org.eclipse.search.SearchResultView"/>
      </actionSetPartAssociation>
   </extension>

   <!--===============================-->
   <!-- Model Builder Extension Point -->
   <!--===============================-->

   <extension-point id="modelbuilder" name="%extension-point.name" schema="schema/modelbuilder.exsd"/>

   <!--============================-->
   <!-- DOM Parser Extension Point -->
   <!--============================-->

   <extension-point id="domparser" name="%extension-point.name.0" schema="schema/domparser.exsd"/>

   <!--============================================-->
   <!-- Convert C/C++ Projects to Photran Projects -->
   <!--============================================-->
   <extension point="org.eclipse.ui.popupMenus">
      <viewerContribution
         id="org.eclipse.photran.ui.ViewActions"
         targetID="org.eclipse.photran.ui.FortranView">
         <visibility>
            <objectState name="nature" value="org.eclipse.cdt.core.cnature" />
         </visibility>
         <action
            id="org.eclipse.photran.cdtinterface.ui.ProjectConversionAction"
            label="%action.label.2"
            menubarPath="additions"
            icon="icons/obj16/f_file_obj.gif"
            class="org.eclipse.photran.internal.cdtinterface.ui.ProjectConversionAction" />
      </viewerContribution>
   </extension>

</plugin>
