blob: 8ca30a183f434bf175bb8dac767c8f252b64b61c [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
<!--==============-->
<!-- Refactorings -->
<!--==============-->
<!-- NOTE: When adding refactorings, please notify
Mariano Mendez so he can update www.fortranrefactoring.com.ar -->
<extension
point="org.eclipse.photran.ui.vpg.internal.refactorings">
<resourceFilter class="org.eclipse.photran.internal.ui.vpg.PhotranResourceFilter" />
<!-- Define the Refactor menu -->
<group><!-- Rename and Move -->
<editorRefactoring command="org.eclipse.photran.ui.RenameRefactoringCommand" />
</group>
<group><!-- Extract XYZ -->
<editorRefactoring command="org.eclipse.photran.ui.ExtractProcedureRefactoringCommand" />
<editorRefactoring command="org.eclipse.photran.ui.ExtractLocalVariableRefactoringCommand" />
</group>
<group>
<submenu name="Subprogram"><!-- Refactorings that change subprograms -->
<editorRefactoring
command="org.eclipse.photran.ui.AddSubroutineParameterRefactoringCommand"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.PermuteSubroutineArgsRefactoring"
inputPage="org.eclipse.photran.internal.ui.refactoring.PermuteSubroutineArgsInputPage"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.SafeDeleteInternalSubprogramRefactoring"
/>
<editorRefactoring
command="org.eclipse.photran.ui.ExtractSubprogramToModuleRefactoringCommand"
/>
<!--editorRefactoring Temporarily disabled - see Bug 382437
command="org.eclipse.photran.ui.MoveSubprogramToModuleRefactoringCommand"
/-->
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.IntroduceCallTreeRefactoring"
/>
</submenu>
</group>
<group>
<submenu name="Module"><!-- Refactorings that change declarations in modules -->
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.MakePrivateEntityPublicRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.EncapsulateVariableRefactoring"
/>
</submenu>
<submenu name="Use Statement"><!-- Refactorings for USE statements -->
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.AddOnlyToUseStmtRefactoring"
inputPage="org.eclipse.photran.internal.ui.refactoring.AddOnlyToUseStmtInputPage"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.MinOnlyListRefactoring"
/>
</submenu>
</group>
<group>
<submenu name="Common Block"><!-- Refactorings for COMMON blocks -->
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.CommonVarNamesRefactoring"
inputPage="org.eclipse.photran.internal.ui.refactoring.CommonVarNamesInputPage"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.MoveSavedToCommonBlockRefactoring"
/>
<!--resourceRefactoring Temporarily disabled - see Bug 382436
class="org.eclipse.photran.internal.core.refactoring.RemoveUnusedCommonBlockVariablesRefactoring"
/-->
<!--editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.MoveCommonToModuleRefactoring"
/-->
</submenu>
</group>
<group>
<submenu name="Derived Type"><!-- Refactorings for derived types -->
<editorRefactoring
command="org.eclipse.photran.ui.AddVariableToDerivedDataTypeRefactoringCommand"
/>
<editorRefactoring
command="org.eclipse.photran.ui.TransformToDerivedDataTypeRefactoringCommand"
/>
</submenu>
</group>
<group>
<submenu name="Do Loop"><!-- Loop transformations (for performance improvement) -->
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.InterchangeLoopsRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.FuseLoopsRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.ReverseLoopRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.TileLoopRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.UnrollLoopRefactoring"
/>
<editorRefactoring
command="org.eclipse.photran.ui.ReplaceDoLoopWithForallRefactoringCommand"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.ChangeToVectorNotationRefactoring"
/>
</submenu>
</group>
<group>
<submenu name="Obsolete Language Features"><!-- Refactorings that remove obsolete features -->
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemoveArithmeticIfRefactoring"
/>
<resourceRefactoring
command="org.eclipse.photran.ui.RemoveAssignedGotoRefactoringCommand"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemoveBranchToEndIfRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.ReplaceCharacterStarRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemoveComputedGoToRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.RepObsOpersRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.ReplaceOldStyleDoLoopRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemovePauseStmtRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemoveRealAndDoublePrecisionLoopCountersRefactoring"
inputPage="org.eclipse.photran.internal.ui.refactoring.RemoveRealAndDoublePrecisionLoopCountersInputPage"
/>
</submenu>
</group>
<group>
<submenu name="Coding Style"><!-- Refactorings to improve coding style -->
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.AddIdentifierToEndRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.KeywordCaseRefactoring"
inputPage="org.eclipse.photran.internal.ui.refactoring.KeywordCaseInputPage"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.VariableCaseRefactoring"
inputPage="org.eclipse.photran.internal.ui.refactoring.VariableCaseInputPage"
/>
<editorRefactoring
command="org.eclipse.photran.ui.IfConstructStatementConversionRefactoringCommand"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.DataToParameterRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.ConvertIfThenElseToSelectCaseRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.IntroImplicitNoneRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.MakeSaveExplicitRefactoring"
/>
<editorRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemoveUnreferencedLabelsRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.RemoveUnusedVariablesRefactoring"
/>
<resourceRefactoring
class="org.eclipse.photran.internal.core.refactoring.StandardizeStatementsRefactoring"
/>
</submenu>
</group>
</extension>
<!--=====================================-->
<!-- Advanced Refactoring Configurations -->
<!--=====================================-->
<!-- If a refactoring was contributed as a "command" above... -->
<!-- (usually, this is just so that we can associate a keybinding with it) -->
<!-- 1. Define the command -->
<extension
point="org.eclipse.ui.commands">
<category
name="%category.name"
id="org.eclipse.photran.ui.RefactoringCategory">
</category>
<command
name="%command.name"
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.RenameRefactoringCommand">
</command>
<command
name="%command.name.0"
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.ExtractProcedureRefactoringCommand">
</command>
<command
name="%command.name.1"
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.ExtractLocalVariableRefactoringCommand">
</command>
<command
name="Convert Between If Statement and If Construct..."
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.IfConstructStatementConversionRefactoringCommand">
</command>
<command
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.RemoveAssignedGotoRefactoringCommand"
name="Remove Assigned Goto...">
</command>
<command
name="%command.name.21"
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.AddSubroutineParameterRefactoringCommand">
</command>
<command
name="Add Variable to Derived Data Type..."
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.AddVariableToDerivedDataTypeRefactoringCommand">
</command>
<command
name="Extract Subprogram to Module..."
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.ExtractSubprogramToModuleRefactoringCommand">
</command>
<command
name="Move Subprogram to Module..."
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.MoveSubprogramToModuleRefactoringCommand">
</command>
<command
name="Replace Do Loop with Forall (Unchecked)..."
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.ReplaceDoLoopWithForallRefactoringCommand">
</command>
<command
name="Transform to Derived Data Type..."
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.TransformToDerivedDataTypeRefactoringCommand">
</command>
</extension>
<!-- 2. Optionally associate the command with an accelerator key -->
<extension
point="org.eclipse.ui.bindings">
<key
sequence="M3+M2+R"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.RenameRefactoringCommand"
/>
<key
sequence="M3+M2+M"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.ExtractProcedureRefactoringCommand"
/>
<key
sequence="M3+M2+L"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.ExtractLocalVariableRefactoringCommand"
/>
<key
sequence="M3+M2+I"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.IfConstructStatementConversionRefactoringCommand"
/>
<key
sequence="M3+M2+P"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.AddSubroutineParameterRefactoringCommand"
/>
</extension>
<!-- 3. Add the command to Photran's Refactoring action set -->
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%actionSet.label"
description="%actionSet.description"
visible="false"
id="org.eclipse.photran.ui.RefactoringActionSet">
<action
label="%action.label"
definitionId="org.eclipse.photran.ui.RenameRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.RenameAction"
id="org.eclipse.photran.ui.RenameRefactoringAction"/>
<action
label="%action.label.0"
definitionId="org.eclipse.photran.ui.ExtractProcedureRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.ExtractProcedureAction"
id="org.eclipse.photran.ui.ExtractProcedureRefactoringAction"/>
<action
label="%action.label.1"
definitionId="org.eclipse.photran.ui.ExtractLocalVariableRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.ExtractLocalVariableAction"
id="org.eclipse.photran.ui.ExtractLocalVariableRefactoringAction"/>
<action
label="Convert Between If Statement and If Construct"
definitionId="org.eclipse.photran.ui.IfConstructStatementConversionRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.IfConstructStatementConversionAction"
id="org.eclipse.photran.ui.IfConstructStatementConversionRefactoringAction"/>
<action
label="Remove Assigned Goto"
definitionId="org.eclipse.photran.ui.RemoveAssignedGotoRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.RemoveAssignedGotoAction"
id="org.eclipse.photran.ui.RemoveAssignedGotoAction"/>
<action
label="%action.label.21"
definitionId="org.eclipse.photran.ui.AddSubroutineParameterRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.AddSubroutineParameterAction"
id="org.eclipse.photran.ui.AddSubroutineParameterRefactoringAction"/>
<action
label="Add Variable to Derived Data Type"
definitionId="org.eclipse.photran.ui.AddVariableToDerivedDataTypeRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.AddVariableToDerivedDataTypeAction"
id="org.eclipse.photran.ui.AddVariableToDerivedDataTypeRefactoringAction"/>
<action
label="Extract Subprogram to Module"
definitionId="org.eclipse.photran.ui.ExtractSubprogramToModuleRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.ExtractSubprogramToModuleAction"
id="org.eclipse.photran.ui.ExtractSubprogramToModuleRefactoringAction"/>
<action
label="Move Subprogram to Module"
definitionId="org.eclipse.photran.ui.MoveSubprogramToModuleRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.MoveSubprogramToModuleAction"
id="org.eclipse.photran.ui.MoveSubprogramToModuleRefactoringAction"/>
<action
label="Replace Do Loop with Forall"
definitionId="org.eclipse.photran.ui.ReplaceDoLoopWithForallRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.ReplaceDoLoopWithForallAction"
id="org.eclipse.photran.ui.ReplaceDoLoopWithForallRefactoringAction"/>
<action
label="Transform to Derived Data Type"
definitionId="org.eclipse.photran.ui.TransformToDerivedDataTypeRefactoringCommand"
class="org.eclipse.photran.internal.ui.refactoring.TransformToDerivedDataTypeAction"
id="org.eclipse.photran.ui.TransformToDerivedDataTypeRefactoringAction"/>
</actionSet>
</extension>
<!-- 4. Associate the Refactoring action set with the Fortran perspective & editor -->
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension targetID="org.eclipse.photran.ui.FortranPerspective">
<actionSet id="org.eclipse.photran.ui.RefactoringActionSet"/>
</perspectiveExtension>
</extension>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation targetID="org.eclipse.photran.ui.RefactoringActionSet">
<part id="org.eclipse.photran.ui.FortranEditor"/>
</actionSetPartAssociation>
</extension>
<!--=========================================-->
<!-- Fortran-specific project property pages -->
<!--=========================================-->
<extension
point="org.eclipse.ui.propertyPages">
<page
name="%page.name"
class="org.eclipse.photran.internal.ui.properties.SearchPathsPropertyPage"
id="org.eclipse.photran.ui.SearchPathsPropertyPage"
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>
<!-- Commands, key bindings, and popup menu entries
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 -->
<!-- win32: M1=CTRL, M2=SHIFT, M3=ALT, M4=-
carbon: M1=COMMAND, M2=SHIFT, M3=ALT, M4=CTRL -->
<!--==================================-->
<!-- Open Declaration (F3 or Ctrl+F3) -->
<!--==================================-->
<extension
point="org.eclipse.ui.commands">
<category
name="%category.name.0"
description="%category.description"
id="org.eclipse.photran.ui.NavigationCategory">
</category>
<command
categoryId="org.eclipse.photran.ui.NavigationCategory"
description="%command.description"
id="org.eclipse.photran.ui.OpenDeclarationCommand"
name="%command.name.2">
</command>
</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="F3"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.OpenDeclarationCommand"/>
<key
sequence="M1+F3"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.OpenDeclarationCommand"/>
</extension>
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%actionSet.label.0"
description="%actionSet.description.0"
visible="false"
id="org.eclipse.photran.ui.AnalysisActionSet">
<action
label="%action.label.3"
definitionId="org.eclipse.photran.ui.OpenDeclarationCommand"
class="org.eclipse.photran.internal.ui.actions.OpenDeclaration"
menubarPath="navigate/additions"
id="org.eclipse.photran.ui.OpenDeclarationAction"/>
</actionSet>
</extension>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation targetID="org.eclipse.photran.ui.AnalysisActionSet">
<part id="org.eclipse.photran.ui.FortranEditor"/>
</actionSetPartAssociation>
</extension>
<extension point="org.eclipse.ui.popupMenus">
<viewerContribution
targetID="#FortranEditorContextMenu"
id="org.eclipse.photran.ui.NavigationContribution">
<action
class="org.eclipse.photran.internal.ui.actions.OpenDeclaration"
definitionId="org.eclipse.photran.ui.OpenDeclarationCommand"
id="org.eclipse.photran.ui.OpenDeclarationMenuAction"
label="%action.label.3"
menubarPath="group.open"/>
</viewerContribution>
</extension>
<!--============-->
<!-- Reindenter -->
<!--============-->
<extension point="org.eclipse.ui.popupMenus">
<viewerContribution
targetID="#FortranEditorContextMenu"
id="org.eclipse.photran.ui.FixedReindenterContribution">
<action
label="%action.label.reindent"
definitionId="org.eclipse.photran.ui.CorrectIndentationCommand"
class="org.eclipse.photran.internal.ui.actions.CorrectIndentationAction"
menubarPath="group.edit"
id="org.eclipse.photran.ui.ReindenterMenuAction"/>
</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.CorrectIndentationCommand"
name="%command.name.reindent">
</command>
</extension>
<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" />
<separator name="importGroup" />
<separator name="generateGroup" />
<separator name="codeGroup" />
<separator name="externalizeGroup" />
<separator name="convertGroup" />
<separator name="additions" />
</menu>
</menuContribution>
</extension>
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%actionSet.label.reindent"
description="%actionSet.description.reindent"
visible="false"
id="org.eclipse.photran.ui.Reindenter">
<action
label="%action.label.reindent.0"
menubarPath="org.eclipse.jdt.ui.source.menu/editGroup"
definitionId="org.eclipse.photran.ui.CorrectIndentationCommand"
class="org.eclipse.photran.internal.ui.actions.CorrectIndentationAction"
id="org.eclipse.photran.ui.ReindenterAction">
</action>
</actionSet>
</extension>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation targetID="org.eclipse.photran.ui.Reindenter">
<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 -->
<!-- Bind Ctrl+I to Reindent -->
<key
sequence="M1+I"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.CorrectIndentationCommand"/>
</extension>
<!--====================================-->
<!-- Fortran Search and Find References -->
<!--====================================-->
<extension
id="vpgSearchPage"
name="%extension.name"
point="org.eclipse.search.searchPages">
<page
canSearchEnclosingProjects="true"
class="org.eclipse.photran.internal.ui.search.FortranSearchPage"
icon="icons/full/obj16/fsearch_obj.gif"
id="org.eclipse.photran.ui.vpgSearchPage"
label="%page.label"
showScopeSection="true"
sizeHint="460, 160"/>
</extension>
<!-- 1. Define the command -->
<extension
point="org.eclipse.ui.commands">
<category
name="%category.name.1"
description="%category.description.0"
id="org.eclipse.photran.ui.SearchCategory">
</category>
<command
categoryId="org.eclipse.photran.ui.SearchCategory"
description="%command.description.0"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesWorkspaceCommand"
name="%command.name.3" />
<command
categoryId="org.eclipse.photran.ui.SearchCategory"
description="%command.description.1"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesProjectCommand"
name="%command.name.4" />
<command
categoryId="org.eclipse.photran.ui.SearchCategory"
description="%command.description.2"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesFileCommand"
name="%command.name.5" />
</extension>
<!-- 2. Optionally associate the command with an accelerator key -->
<extension
point="org.eclipse.ui.bindings">
<!--win32: M1=CTRL, M2=SHIFT, M3=ALT, M4=-
carbon: M1=COMMAND, M2=SHIFT, M3=ALT, M4=CTRL -->
<!-- Bind Shift+Ctrl+G to References > Workspace -->
<key
sequence="M2+M1+G"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.vpg.FortranFindReferencesWorkspaceCommand"/>
</extension>
<!-- 3. Add the command to an action set -->
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%actionSet.label.1"
description="%actionSet.description.1"
visible="false"
id="org.eclipse.photran.ui.SearchActionSet">
<menu
id="org.eclipse.photran.ui.vpg.FortranFindReferencesMenu"
label="%menu.label"
path="org.eclipse.search.menu/occurencesActionsGroup"><!-- See plugin.xml for org.eclipse.search -->
<separator
name="FindAllReferencesGroup">
</separator>
</menu>
<action
class="org.eclipse.photran.internal.ui.search.FortranFindReferencesActionDelegate$FileActionDelegate"
definitionId="org.eclipse.photran.ui.vpg.FortranFindReferencesFileCommand"
icon="icons/full/obj16/search_ref_obj.gif"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesFileAction"
label="%action.label.4"
menubarPath="org.eclipse.search.menu/org.eclipse.photran.ui.vpg.FortranFindReferencesMenu/FindAllReferencesGroup">
</action>
<action
class="org.eclipse.photran.internal.ui.search.FortranFindReferencesActionDelegate$ProjectActionDelegate"
definitionId="org.eclipse.photran.ui.vpg.FortranFindReferencesProjectCommand"
icon="icons/full/obj16/search_ref_obj.gif"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesProjectAction"
label="%action.label.5"
menubarPath="org.eclipse.search.menu/org.eclipse.photran.ui.vpg.FortranFindReferencesMenu/FindAllReferencesGroup">
</action>
<action
class="org.eclipse.photran.internal.ui.search.FortranFindReferencesActionDelegate$WorkspaceActionDelegate"
definitionId="org.eclipse.photran.ui.vpg.FortranFindReferencesWorkspaceCommand"
icon="icons/full/obj16/search_ref_obj.gif"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesWorkspaceAction"
label="%action.label.6"
menubarPath="org.eclipse.search.menu/org.eclipse.photran.ui.vpg.FortranFindReferencesMenu/FindAllReferencesGroup">
</action>
<action
class="org.eclipse.photran.internal.ui.search.FortranSearchPage$OpenAction"
icon="icons/full/obj16/fsearch_obj.gif"
id="org.eclipse.photran.ui.vpg.actions.OpenFortranSearchPage"
label="%action.label.7"
menubarPath="org.eclipse.search.menu/dialogGroup">
</action>
</actionSet>
</extension>
<!-- 4. Associate the action set with the Fortran perspective & editors -->
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension targetID="org.eclipse.photran.ui.FortranPerspective">
<actionSet id="org.eclipse.photran.ui.SearchActionSet"/>
</perspectiveExtension>
</extension>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation targetID="org.eclipse.photran.ui.SearchActionSet">
<part id="org.eclipse.photran.ui.FortranEditor"/>
</actionSetPartAssociation>
</extension>
<!-- 5. Contribute the actions to the Fortran editors' popup menus -->
<extension point="org.eclipse.ui.popupMenus">
<viewerContribution
id="org.eclipse.photran.ui.vpg.FortranFindReferencesContribution"
targetID="#FortranEditorContextMenu">
<menu
id="org.eclipse.photran.ui.vpg.FortranFindReferencesMenu"
label="%menu.label.0"
path="group.find"><!-- See ITextEditorActionConstants - was originally group.search according to IContextMenuConstants -->
<separator
name="FindAllReferencesGroup">
</separator>
</menu>
<action
class="org.eclipse.photran.internal.ui.search.FortranFindReferencesActionDelegate$FileActionDelegate"
definitionId="org.eclipse.photran.ui.vpg.FortranFindReferencesFileCommand"
icon="icons/full/obj16/search_ref_obj.gif"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesFileAction"
label="%action.label.8"
menubarPath="org.eclipse.photran.ui.vpg.FortranFindReferencesMenu/FindAllReferencesGroup">
</action>
<action
class="org.eclipse.photran.internal.ui.search.FortranFindReferencesActionDelegate$ProjectActionDelegate"
definitionId="org.eclipse.photran.ui.vpg.FortranFindReferencesProjectCommand"
icon="icons/full/obj16/search_ref_obj.gif"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesProjectAction"
label="%action.label.9"
menubarPath="org.eclipse.photran.ui.vpg.FortranFindReferencesMenu/FindAllReferencesGroup">
</action>
<action
class="org.eclipse.photran.internal.ui.search.FortranFindReferencesActionDelegate$WorkspaceActionDelegate"
definitionId="org.eclipse.photran.ui.vpg.FortranFindReferencesWorkspaceCommand"
icon="icons/full/obj16/search_ref_obj.gif"
id="org.eclipse.photran.ui.vpg.FortranFindReferencesWorkspaceAction"
label="%action.label.10"
menubarPath="org.eclipse.photran.ui.vpg.FortranFindReferencesMenu/FindAllReferencesGroup">
</action>
</viewerContribution>
</extension>
<!--=======================================-->
<!-- Debugging Actions in Refactoring Menu -->
<!--=======================================-->
<!-- Fortran-specific debugging actions -->
<!-- These actions (e.g., Display Symbol Table and Resolve INTERFACE Binding) are -->
<!-- Fortran-specific, but they are also contributed to the Refactor > (Debugging) -->
<!-- menu. -->
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%actionSet.label.2"
description="%actionSet.description.2"
visible="false"
id="org.eclipse.photran.ui.DebugActionSet">
<menu
label="%menu.label.1"
path="edit"
id="org.eclipse.jdt.ui.refactoring.menu">
<separator name="scriptGroup"/>
</menu>
<menu
label="%menu.label.2"
path="org.eclipse.jdt.ui.refactoring.menu/scriptGroup"
id="debugging">
<separator name="debugging"/>
<separator name="debugginginterfaces"/>
<separator name="vpgstats"/>
<separator name="vpgdb"/>
</menu>
<action
label="%action.label.11"
class="org.eclipse.photran.internal.ui.actions.FindMatchingInterfaceDeclarations"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugginginterfaces"
id="org.eclipse.photran.ui.FindMatchingInterfaceDeclarationsAction"/>
<action
label="%action.label.12"
class="org.eclipse.photran.internal.ui.actions.ResolveInterfaceBinding"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugginginterfaces"
id="org.eclipse.photran.ui.ResolveInterfaceBindingAction"/>
<!-- -->
<action
label="%action.label.13"
class="org.eclipse.photran.internal.ui.actions.SelectEnclosingScope"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugging"
id="org.eclipse.photran.ui.FindEnclosingScopeAction"/>
<action
label="%action.label.14"
class="org.eclipse.photran.internal.ui.actions.FindAllDeclarationsInScope"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugging"
id="org.eclipse.photran.ui.FindAllDeclarationsInScopeAction"/>
<action
class="org.eclipse.photran.internal.ui.actions.DisplaySymbolTable"
id="org.eclipse.photran.ui.DisplaySymbolTableAction"
label="%action.label.15"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugging"/>
<!-- -->
<action
label="%action.label.19"
class="org.eclipse.photran.internal.ui.actions.HighlightVariableAccesses"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugging"
id="org.eclipse.photran.ui.HighlightVariableAccessesAction"/>
<!-- -->
<action
class="org.eclipse.photran.internal.ui.actions.ResetBinderStatistics"
id="org.eclipse.photran.ui.ResetBinderStatisticsAction"
label="%action.label.16"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgstats"/>
<action
class="org.eclipse.photran.internal.ui.actions.DisplayBinderStatistics"
id="org.eclipse.photran.ui.DisplayBinderStatisticsAction"
label="%action.label.17"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgstats"/>
<!-- -->
<action
label="%action.label.18"
definitionId="org.eclipse.photran.ui.EasterEggCommand"
class="org.eclipse.photran.internal.ui.actions.EasterEggAction"
id="org.eclipse.photran.ui.EasterEggAction"/>
</actionSet>
</extension>
<extension
point="org.eclipse.ui.commands">
<command
name="%command.name.6"
categoryId="org.eclipse.photran.ui.RefactoringCategory"
id="org.eclipse.photran.ui.EasterEggCommand">
</command>
</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+M2+M3+M4+6"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
contextId="org.eclipse.photran.ui.FortranEditorContext"
commandId="org.eclipse.photran.ui.EasterEggCommand"
/>
</extension>
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension targetID="org.eclipse.photran.ui.FortranPerspective">
<!-- Omitting this since most of the actions are only meaningful when an editor is open:
<actionSet id="org.eclipse.photran.ui.DebugActionSet"/-->
<actionSet id="org.eclipse.rephraserengine.ui.DebugActionSet"/>
</perspectiveExtension>
</extension>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation targetID="org.eclipse.photran.ui.DebugActionSet">
<part id="org.eclipse.photran.ui.FortranEditor"/>
</actionSetPartAssociation>
<actionSetPartAssociation targetID="org.eclipse.rephraserengine.ui.DebugActionSet">
<part id="org.eclipse.photran.ui.FortranEditor"/>
</actionSetPartAssociation>
</extension>
<!--=======-->
<!-- Views -->
<!--=======-->
<extension point="org.eclipse.ui.views">
<category
id="org.eclipse.photran.ui.views"
name="%category.name.2">
</category>
<!-- Declaration View -->
<view
category="org.eclipse.photran.ui.views"
class="org.eclipse.photran.internal.ui.views.declaration.DeclarationView"
icon="icons/full/eview16/source.gif"
id="org.eclipse.photran.ui.DeclarationView"
name="%view.name">
</view>
<!-- Analysis/Refactoring Problems View -->
<view
category="org.eclipse.photran.ui.views"
class="org.eclipse.photran.internal.ui.views.vpgproblems.VPGProblemView"
icon="icons/full/eview16/problems_view.gif"
id="org.eclipse.photran.ui.VPGProblemView"
name="%view.name.0">
</view>
</extension>
<!--=================================-->
<!-- VPG Source Viewer Configuration -->
<!--=================================-->
<extension point="org.eclipse.photran.ui.sourceViewerConfig">
<sourceViewerConfig
factory="org.eclipse.photran.internal.ui.editor_vpg.FortranVPGSourceViewerConfigurationFactory" />
</extension>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- REPHRASER ENGINE CONTRIBUTIONS - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!-- Supply a viewer for search results -->
<extension
point="org.eclipse.search.searchResultViewPages">
<viewPage
class="org.eclipse.photran.internal.ui.search.SearchViewPage"
id="org.eclipse.rephraserengine.ui.searchViewPage"
searchResultClass="org.eclipse.photran.internal.ui.search.SearchResult"/>
</extension>
<!-- Search menu from org.eclipse.search
Duplicated here to prevent errors like
!ENTRY org.eclipse.ui 4 4 2010-03-12 10:45:24.324
!MESSAGE Plug-in 'org.eclipse.rephraserengine.examples.text' contributed an invalid Menu Extension (Path: 'org.eclipse.search.menu' is invalid): org.eclipse.rephraserengine.examples.text.openTextSearchPage
(Note that the original org.eclipse.search.menu is defined in an actionSet.)
-->
<extension point="org.eclipse.ui.menus">
<menuContribution
locationURI="menu:org.eclipse.ui.main.menu?after=navigate">
<menu
id="org.eclipse.search.menu"
label="%rsearchMenu.label">
<!--groupMarker name="dialogGroup"/--> <!-- to be used by clients -->
<separator name="dialogGroup"/> <!-- to be used by clients -->
<separator name="fileSearchContextMenuActionsGroup"/> <!-- to be used by clients -->
<separator name="contextMenuActionsGroup"/> <!-- to be used by clients -->
<separator name="occurencesActionsGroup"/> <!-- to be used by clients -->
<separator name="extraSearchGroup"/> <!-- to be used by clients -->
</menu>
</menuContribution>
</extension>
<!-- REFACTORING COMPONENT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!--=============================-->
<!-- Refactoring Extension Point -->
<!--=============================-->
<extension-point id="org.eclipse.photran.ui.vpg.internal.refactorings" name="%rextension-point.name" schema="schema/refactorings.exsd" />
<!--===============-->
<!-- Refactor Menu -->
<!--===============-->
<extension point="org.eclipse.core.expressions.definitions">
<definition id="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource">
<with variable="selection">
<iterate operator="or" ifEmpty="false">
<or>
<adapt type="org.eclipse.core.resources.IResource">
<test
property="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"
forcePluginActivation="true" />
</adapt>
<adapt type="org.eclipse.jface.text.ITextSelection">
<test
property="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"
forcePluginActivation="true" />
</adapt>
</or>
</iterate>
</with>
</definition>
</extension>
<extension point="org.eclipse.ui.menus">
<!-- Refactor menu in the menu bar -->
<!-- ============================= -->
<!-- Always visible -->
<menuContribution
locationURI="menu:org.eclipse.ui.main.menu?before=navigate">
<!-- 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 -->
<menu
label="%rmenu.label"
id="org.eclipse.jdt.ui.refactoring.menu">
<!-- http://wiki.eclipse.org/Command_Core_Expressions -->
<visibleWhen checkEnabled="false">
<reference definitionId="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource" />
</visibleWhen>
<dynamic
class="org.eclipse.photran.internal.ui.menus.RefactorMenu"
id="org.eclipse.rephraserengine.ui.menus.refactor">
</dynamic>
</menu>
</menuContribution>
<!-- Refactor sub-menu in popup menus -->
<!-- (e.g., in the Navigator view) -->
<!-- ================================ -->
<!-- Visible when at least one IResource is selected -->
<menuContribution
locationURI="popup:org.eclipse.ui.popup.any?after=group.reorganize">
<menu
label="%rmenu.label"
id="org.eclipse.jdt.ui.refactoring.menu">
<!-- http://wiki.eclipse.org/Command_Core_Expressions -->
<visibleWhen checkEnabled="false">
<reference definitionId="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource" />
</visibleWhen>
<dynamic
class="org.eclipse.photran.internal.ui.menus.RefactorMenu"
id="org.eclipse.rephraserengine.ui.menus.refactor">
</dynamic>
</menu>
</menuContribution>
<!-- Refactor sub-menu in Fortran editor popup menu -->
<!-- ============================================== -->
<menuContribution
locationURI="popup:#FortranEditorContextMenu?after=group.edit">
<menu
label="%rmenu.label"
id="org.eclipse.jdt.ui.refactoring.menu">
<!-- http://wiki.eclipse.org/Command_Core_Expressions -->
<visibleWhen checkEnabled="false">
<reference definitionId="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource" />
</visibleWhen>
<dynamic
class="org.eclipse.photran.internal.ui.menus.RefactorMenu"
id="org.eclipse.rephraserengine.ui.menus.refactor">
</dynamic>
</menu>
</menuContribution>
</extension>
<!--=================-->
<!-- Property Tester -->
<!--=================-->
<extension
point="org.eclipse.core.expressions.propertyTesters">
<propertyTester
id="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"
class="org.eclipse.photran.internal.ui.menus.RefactorableResourcePropertyTester"
namespace="org.eclipse.rephraserengine.ui.refactoring"
properties="isRefactorable"
type="java.lang.Object"/>
</extension>
<!-- VPG COMPONENT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!--=======================================-->
<!-- Debugging Actions in Refactoring Menu -->
<!--=======================================-->
<!--==============================================-->
<!-- Browse Action in Refactor > (Debugging) Menu -->
<!--==============================================-->
<!-- 1. Define commands -->
<extension
point="org.eclipse.ui.commands">
<category
name="VPG Debugging Commands"
id="org.eclipse.rephraserengine.ui.VPGDebuggingCategory">
</category>
<command
name="Browse VPG"
categoryId="org.eclipse.rephraserengine.ui.VPGDebuggingCategory"
id="org.eclipse.rephraserengine.ui.BrowseCommand">
</command>
</extension>
<!-- 2. Optionally associate commands with an accelerator key -->
<!-- win32: M1=CTRL, M2=SHIFT, M3=ALT, M4=-
carbon: M1=COMMAND, M2=SHIFT, M3=ALT, M4=CTRL -->
<extension
point="org.eclipse.ui.bindings">
<key
sequence="M1+M2+M3+B"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
commandId="org.eclipse.rephraserengine.ui.BrowseCommand"
/>
</extension>
<!-- 3. Define an action set -->
<extension point="org.eclipse.ui.actionSets">
<actionSet
label="%ractionSet.label"
description="%ractionSet.description"
visible="false"
id="org.eclipse.rephraserengine.ui.DebugActionSet">
<!-- 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 -->
<menu
label="%rmenu.label"
path="edit"
id="org.eclipse.jdt.ui.refactoring.menu">
<!-- JAVA REFACTORINGS IN THIS GROUP: -->
<separator name="undoRedoGroup"/> <!-- ================================ -->
<separator name="reorgGroup"/> <!-- Rename, Move -->
<separator name="codingGroup"/> <!-- Change Signature, Extract Var/Method, Inline -->
<separator name="reorgGroup2"/> <!-- Convert -->
<separator name="typeGroup"/> <!-- Extract Superclass, Pull Up, Push Down -->
<separator name="typeGroup2"/> <!-- Extract Class, Intro Parameter Obj -->
<separator name="codingGroup2"/> <!-- Introduce Factory, Encapsulate -->
<separator name="typeGroup3"/> <!-- Generalize Type, Infer Generics -->
<separator name="scriptGroup"/> <!-- Create/Apply Script, History -->
</menu>
<menu
label="%rmenu.label.0"
path="org.eclipse.jdt.ui.refactoring.menu/scriptGroup"
id="debugging">
<separator name="debugging"/>
<separator name="debugginginterfaces"/>
<separator name="vpgstats"/>
<separator name="vpgdb"/>
</menu>
<action
class="org.eclipse.photran.internal.ui.actions.DisplayVPGErrorLogAction"
id="org.eclipse.rephraserengine.ui.DisplayVPGErrorLogAction"
label="%raction.label"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/debugging"/>
<!-- -->
<action
class="org.eclipse.photran.internal.ui.actions.ResetDBStatisticsAction"
id="org.eclipse.rephraserengine.ui.ResetVPGStatisticsAction"
label="%raction.label.0"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgstats"/>
<action
class="org.eclipse.photran.internal.ui.actions.DisplayDBStatisticsAction"
id="org.eclipse.rephraserengine.ui.DisplayVPGStatisticsAction"
label="%raction.label.1"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgstats"/>
<!-- -->
<action
class="org.eclipse.photran.internal.ui.actions.ClearDBAction"
id="org.eclipse.rephraserengine.ui.ClearVPGDatabaseAction"
label="%raction.label.2"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgdb"/>
<action
class="org.eclipse.photran.internal.ui.actions.EnsureDBUpToDateAction"
id="org.eclipse.rephraserengine.ui.RefreshVPGDatabaseAction"
label="%raction.label.3"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgdb"/>
<action
class="org.eclipse.photran.internal.ui.actions.DisplayModelAction"
id="org.eclipse.rephraserengine.ui.DisplayVPGModelAction"
label="%raction.label.4"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgdb"/>
<action
class="org.eclipse.photran.internal.ui.actions.DisplayDBAction"
id="org.eclipse.rephraserengine.ui.DisplayVPGDatabaseAction"
label="%raction.label.5"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgdb"/>
<!-- -->
<action
class="org.eclipse.photran.internal.ui.browser.BrowseDBAction"
id="org.eclipse.rephraserengine.ui.BrowseVPGDatabaseAction"
definitionId="org.eclipse.rephraserengine.ui.BrowseCommand"
label="Browse VPG Database"
menubarPath="org.eclipse.jdt.ui.refactoring.menu/debugging/vpgdb"/>
</actionSet>
</extension>
<!-- 4. Associate the action set with the Resource perspective -->
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension targetID="org.eclipse.ui.resourcePerspective">
<actionSet id="org.eclipse.rephraserengine.ui.DebugActionSet"/>
</perspectiveExtension>
</extension>
<!--=========================================================================-->
<!-- Refactoring Status Context Viewer for PostTransformationContext Objects -->
<!--=========================================================================-->
<extension
point="org.eclipse.ltk.ui.refactoring.statusContextViewers">
<statusContextViewer
class="org.eclipse.photran.internal.ui.preservation.PostTransformationStatusContextViewer"
id="org.eclipse.rephraserengine.ui.vpg.postTransformationStatusContextViewer">
<enablement>
<instanceof value="org.eclipse.photran.internal.core.preservation.PostTransformationContext"/>
</enablement>
</statusContextViewer>
</extension>
</plugin>