| <?xml version="1.0" encoding="UTF-8"?> |
| <?eclipse version="3.4"?> |
| <!-- |
| #=============================================================================# |
| # Copyright (c) 2011, 2020 Stephan Wahlbrink and others. |
| # |
| # This program and the accompanying materials are made available under the |
| # terms of the Eclipse Public License 2.0 which is available at |
| # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0 |
| # which is available at https://www.apache.org/licenses/LICENSE-2.0. |
| # |
| # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 |
| # |
| # Contributors: |
| # Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation |
| #=============================================================================# |
| --> |
| |
| <plugin> |
| |
| <!-- debug model --> |
| <extension |
| point="org.eclipse.debug.ui.debugModelPresentations"> |
| <debugModelPresentation |
| id="org.eclipse.statet.r.debugModels.R" |
| class="org.eclipse.statet.internal.r.debug.ui.RDebugModelPresentation"> |
| </debugModelPresentation> |
| </extension> |
| |
| <extension |
| point="org.eclipse.debug.ui.detailPaneFactories"> |
| <detailFactories |
| id="org.eclipse.statet.r.debugDetailPane.RBreakpointDetailPaneFactory" |
| class="org.eclipse.statet.internal.r.debug.ui.breakpoints.BreakpointDetailFactory"> |
| <enablement> |
| <with |
| variable="selection"> |
| <count |
| value="1"> |
| </count> |
| <iterate> |
| <or> |
| <instanceof |
| value="org.eclipse.statet.r.debug.core.breakpoints.IRBreakpoint"> |
| </instanceof> |
| </or> |
| </iterate> |
| </with> |
| </enablement> |
| </detailFactories> |
| </extension> |
| <extension |
| point="org.eclipse.debug.ui.sourceContainerPresentations"> |
| <!-- platform uri not suppored --> |
| <sourceContainerPresentation |
| id="org.eclipse.statet.r.debugSourceContainerPresentations.REnvLibraryPathPresentation" |
| containerTypeID="org.eclipse.statet.r.debugSourceContainers.REnvLibraryPathType" |
| icon="icons/obj_16/r_env.png"> |
| </sourceContainerPresentation> |
| <sourceContainerPresentation |
| id="org.eclipse.statet.r.debugSourceContainerPresentations.RLibraryPresentation" |
| containerTypeID="org.eclipse.statet.r.debugSourceContainers.RLibraryType" |
| browserClass="org.eclipse.statet.internal.r.debug.ui.sourcelookup.RLibrarySourceContainerBrowser" |
| icon="icons/obj_16/r_library.png"> |
| </sourceContainerPresentation> |
| <sourceContainerPresentation |
| id="org.eclipse.statet.r.debugSourceContainerPresentations.AllRProjectsPresentation" |
| containerTypeID="org.eclipse.statet.r.debugSourceContainers.AllRProjectsType" |
| browserClass="org.eclipse.statet.internal.r.debug.ui.sourcelookup.AllRProjectsSourceContainerBrowser" |
| icon="icons/obj_16/r_project.png"> |
| </sourceContainerPresentation> |
| <sourceContainerPresentation |
| id="org.eclipse.statet.r.debugSourceContainerPresentations.RProjectPresentation" |
| containerTypeID="org.eclipse.statet.r.debugSourceContainers.RProjectType" |
| browserClass="org.eclipse.statet.internal.r.debug.ui.sourcelookup.RProjectSourceContainerBrowser" |
| icon="icons/obj_16/r_project.png"> |
| </sourceContainerPresentation> |
| </extension> |
| <extension |
| point="org.eclipse.core.runtime.adapters"> |
| <factory |
| adaptableType="org.eclipse.statet.r.debug.core.sourcelookup.IRSourceLookupMatch" |
| class="org.eclipse.statet.internal.r.debug.ui.sourcelookup.RSourceLookupAdapterFactory"> |
| <adapter |
| type="org.eclipse.ui.model.IWorkbenchAdapter"/> |
| <adapter |
| type="org.eclipse.ui.IContributorResourceAdapter"/> |
| </factory> |
| <factory |
| adaptableType="org.eclipse.statet.r.debug.core.IRVariable" |
| class="org.eclipse.statet.internal.r.debug.ui.variables.VariableUIAdapterFactory"> |
| <adapter |
| type="org.eclipse.debug.internal.ui.viewers.model.provisional.IElementLabelProvider"/> |
| <adapter |
| type="org.eclipse.debug.internal.ui.viewers.model.provisional.IElementEditor"/> |
| <adapter |
| type="org.eclipse.debug.ui.actions.IWatchExpressionFactoryAdapter"/> |
| </factory> |
| </extension> |
| |
| <extension |
| point="org.eclipse.core.expressions.definitions"> |
| <definition |
| id="org.eclipse.statet.r.expressions.isSelection.RDebugVariable"> |
| <with |
| variable="selection"> |
| <count |
| value="1"/> |
| <iterate> |
| <instanceof |
| value="org.eclipse.statet.r.debug.core.IRVariable"> |
| </instanceof> |
| </iterate> |
| </with> |
| </definition> |
| <definition |
| id="org.eclipse.statet.r.expressions.isSelection.RDebugElementVariable"> |
| <with |
| variable="selection"> |
| <count |
| value="1"/> |
| <iterate> |
| <instanceof |
| value="org.eclipse.statet.r.debug.core.IRElementVariable"/> |
| </iterate> |
| </with> |
| </definition> |
| <definition |
| id="org.eclipse.statet.r.expressions.isSelection.RDebugVariables"> |
| <with |
| variable="selection"> |
| <count |
| value="+"/> |
| <iterate> |
| <instanceof |
| value="org.eclipse.statet.r.debug.core.IRVariable"> |
| </instanceof> |
| </iterate> |
| </with> |
| </definition> |
| <definition |
| id="org.eclipse.statet.r.expressions.isSelection.RDebugExpression"> |
| <with |
| variable="selection"> |
| <count |
| value="1"/> |
| <iterate> |
| <and> |
| <instanceof |
| value="org.eclipse.debug.core.model.IExpression"/> |
| <test property="org.eclipse.statet.ecommons.debug.equalsModelIdentifier" |
| value="org.eclipse.statet.r.debugModels.R"/> |
| </and> |
| </iterate> |
| </with> |
| </definition> |
| <definition |
| id="org.eclipse.statet.r.expressions.isSelection.RDebugExpressionWithElementVariable"> |
| <with |
| variable="selection"> |
| <count |
| value="1"/> |
| <iterate> |
| <and> |
| <instanceof |
| value="org.eclipse.debug.core.model.IExpression"/> |
| <test property="org.eclipse.statet.ecommons.debug.equalsModelIdentifier" |
| value="org.eclipse.statet.r.debugModels.R"/> |
| <adapt |
| type="org.eclipse.statet.r.debug.core.IRVariable"> |
| <instanceof |
| value="org.eclipse.statet.r.debug.core.IRElementVariable"/> |
| </adapt> |
| </and> |
| </iterate> |
| </with> |
| </definition> |
| </extension> |
| |
| <!-- breakpoint actions --> |
| <extension |
| point="org.eclipse.ui.commands"> |
| <command |
| id="org.eclipse.statet.r.commands.AddExceptionBreakpoint" |
| categoryId="org.eclipse.debug.ui.category.run" |
| name="%commands_AddExceptionBreakpoint_label" |
| description="%commands_AddExceptionBreakpoint_description" |
| defaultHandler="org.eclipse.statet.internal.r.debug.ui.actions.AddExceptionBreakpointHandler"> |
| </command> |
| </extension> |
| <extension |
| point="org.eclipse.ui.commandImages"> |
| <image |
| commandId="org.eclipse.statet.r.commands.AddExceptionBreakpoint" |
| icon="icons/obj_16/r_exception.png"/> |
| </extension> |
| |
| <extension |
| point="org.eclipse.ui.menus"> |
| <menuContribution |
| locationURI="menu:org.eclipse.ui.run?endof=breakpointGroup"> |
| <separator |
| name="Debug.R.Breakpoints"> |
| </separator> |
| <command |
| commandId="org.eclipse.statet.r.commands.AddExceptionBreakpoint" |
| label="%menus_AddExceptionBreakpoint_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <or> |
| <with |
| variable="debugContext"> |
| <count value="+"/> |
| </with> |
| <with |
| variable="activePartId"> |
| <equals |
| value="org.eclipse.debug.ui.BreakpointView"/> |
| </with> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isEditorActive.RSourceEditor"/> |
| </or> |
| </visibleWhen> |
| </command> |
| </menuContribution> |
| </extension> |
| |
| <!-- variable/expression actions --> |
| <extension |
| point="org.eclipse.ui.commands"> |
| <command |
| id="org.eclipse.statet.r.commands.InspectAttributes" |
| categoryId="org.eclipse.debug.ui.category.run" |
| name="%commands_InspectAttributes_label" |
| description="%commands_InspectAttributes_description"> |
| </command> |
| </extension> |
| |
| <extension |
| point="org.eclipse.ui.handlers"> |
| <handler |
| commandId="org.eclipse.statet.workbench.commands.CopyElementName" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.CopyQualifiedNameHandler"> |
| <activeWhen> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariables"/> |
| </activeWhen> |
| </handler> |
| <handler |
| commandId="org.eclipse.jdt.ui.edit.text.java.open.editor" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.OpenInEditorHandler"> |
| <activeWhen> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariable"/> |
| </activeWhen> |
| </handler> |
| <handler |
| commandId="org.eclipse.jdt.debug.ui.commands.Watch" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.WatchHandler"> |
| <activeWhen> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariables"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isPartActive.RSourceEditor"/> |
| </or> |
| </activeWhen> |
| </handler> |
| <handler |
| commandId="org.eclipse.jdt.debug.ui.commands.Inspect" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.InspectHandler"> |
| <activeWhen> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugExpression"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isPartActive.RSourceEditor"/> |
| </or> |
| </activeWhen> |
| <enabledWhen> |
| <and> |
| <with |
| variable="debugContext"> |
| <count value="+"/> |
| </with> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugElementVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isPartActive.RSourceEditor"/> |
| </or> |
| </and> |
| </enabledWhen> |
| </handler> |
| <handler |
| commandId="org.eclipse.statet.r.commands.InspectAttributes" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.InspectAttributesHandler"> |
| <activeWhen> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugExpression"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isPartActive.RSourceEditor"/> |
| </or> |
| </activeWhen> |
| <enabledWhen> |
| <and> |
| <with |
| variable="debugContext"> |
| <count value="+"/> |
| </with> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugElementVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugExpressionWithElementVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isPartActive.RSourceEditor"/> |
| </or> |
| </and> |
| </enabledWhen> |
| </handler> |
| </extension> |
| |
| <extension |
| point="org.eclipse.ui.menus"> |
| <menuContribution |
| locationURI="popup:org.eclipse.ui.popup.any?after=variableGroup"> |
| <command |
| commandId="org.eclipse.statet.workbench.commands.CopyElementName" |
| label="%menus_CopyQualifiedName_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariables"/> |
| </visibleWhen> |
| </command> |
| </menuContribution> |
| <menuContribution |
| locationURI="popup:org.eclipse.ui.popup.any?after=additions"> |
| <separator |
| name="debug.inspect" |
| visible="true"> |
| </separator> |
| <command |
| commandId="org.eclipse.jdt.debug.ui.commands.Inspect" |
| label="%menus_Inspect_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugElementVariable"/> |
| </visibleWhen> |
| </command> |
| <command |
| commandId="org.eclipse.statet.r.commands.InspectAttributes" |
| label="%menus_InspectAttributes_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugElementVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugExpressionWithElementVariable"/> |
| </or> |
| </visibleWhen> |
| </command> |
| </menuContribution> |
| <menuContribution |
| locationURI="popup:org.eclipse.ui.popup.any?after=emptyNavigationGroup"> |
| <command |
| commandId="org.eclipse.jdt.ui.edit.text.java.open.editor" |
| label="%menus_OpenInDataEditor_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariable"/> |
| </visibleWhen> |
| </command> |
| </menuContribution> |
| |
| <menuContribution |
| locationURI="menu:org.eclipse.ui.run?endof=Debug.R.Breakpoints"> |
| <separator |
| name="Debug.R.Inspect" |
| visible="true"> |
| </separator> |
| <command |
| commandId="org.eclipse.jdt.debug.ui.commands.Inspect"> |
| <visibleWhen |
| checkEnabled="false"> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariables"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugExpression"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isEditorActive.RSourceEditor"/> |
| </or> |
| </visibleWhen> |
| </command> |
| <command |
| commandId="org.eclipse.statet.r.commands.InspectAttributes" |
| label="%menus_InspectAttributes_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariable"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugExpression"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isEditorActive.RSourceEditor"/> |
| </or> |
| </visibleWhen> |
| </command> |
| <command |
| commandId="org.eclipse.jdt.debug.ui.commands.Watch" |
| label="%menus_Watch_label"> |
| <visibleWhen |
| checkEnabled="false"> |
| <or> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isSelection.RDebugVariables"/> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isEditorActive.RSourceEditor"/> |
| </or> |
| </visibleWhen> |
| </command> |
| </menuContribution> |
| </extension> |
| |
| <!-- editor contributions --> |
| <extension |
| point="org.eclipse.core.runtime.adapters"> |
| <factory |
| adaptableType="org.eclipse.statet.internal.r.ui.editors.REditor" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.RetargettableActionAdapterFactory"> |
| <adapter |
| type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget"/> |
| </factory> |
| </extension> |
| |
| <extension |
| point="org.eclipse.debug.core.launchDelegates"> |
| <launchDelegate |
| id="org.eclipse.statet.r.launchDelegates.RConsoleDebug" |
| type="org.eclipse.statet.r.launchConfigurations.RConsole" |
| modes="debug" |
| delegate="org.eclipse.statet.internal.r.debug.ui.lauching.RConsoleDebugLaunchDelegate" |
| sourceLocatorId="org.eclipse.statet.r.debugSourceLocators.RSourceLocator" |
| sourcePathComputerId="org.eclipse.statet.r.debugSourcePathComputers.RSourcePathComputer"> |
| </launchDelegate> |
| <launchDelegate |
| id="org.eclipse.statet.r.launchDelegates.RRemoteConsoleDebug" |
| type="org.eclipse.statet.r.launchConfigurations.RRemoteConsole" |
| modes="debug" |
| delegate="org.eclipse.statet.internal.r.debug.ui.lauching.RRemoteConsoleDebugLaunchDelegate" |
| sourceLocatorId="org.eclipse.statet.r.debugSourceLocators.RSourceLocator" |
| sourcePathComputerId="org.eclipse.statet.r.debugSourcePathComputers.RSourcePathComputer"> |
| </launchDelegate> |
| </extension> |
| <extension |
| point="org.eclipse.ui.editors.markerUpdaters"> |
| <updater |
| id="org.eclipse.statet.r.resourceMarkerUpdaters.RBreakpoint" |
| markerType="org.eclipse.statet.r.resourceMarkers.RBreakpoint" |
| class="org.eclipse.statet.internal.r.debug.ui.breakpoints.BreakpointMarkerUpdater"> |
| </updater> |
| </extension> |
| <extension |
| point="org.eclipse.ui.handlers"> |
| <handler |
| commandId="org.eclipse.jdt.debug.ui.commands.StepIntoSelection" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.StepIntoSelectionHandler"> |
| <activeWhen> |
| <reference |
| definitionId="org.eclipse.statet.r.expressions.isEditorActive.RSourceEditor"/> |
| </activeWhen> |
| <enabledWhen> |
| <with |
| variable="org.eclipse.statet.activeTool"> |
| <test |
| property="org.eclipse.statet.nico.isMainType" |
| value="R" |
| forcePluginActivation="false"> |
| </test> |
| </with> |
| </enabledWhen> |
| </handler> |
| </extension> |
| <extension |
| point="org.eclipse.ui.editorActions"> |
| <editorContribution |
| id="org.eclipse.statet.r.legacy.REditorRulerDebugActions" |
| targetID="org.eclipse.statet.r.editors.R"> |
| <action |
| id="org.eclipse.jdt.debug.ui.actions.ManageBreakpointRulerAction" |
| actionID="RulerDoubleClick" |
| class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate" |
| label="ToggleBreakpoint"> |
| </action> |
| </editorContribution> |
| </extension> |
| <extension |
| point="org.eclipse.ui.popupMenus"> |
| <viewerContribution |
| id="org.eclipse.statet.r.legacy.REditorRulerMenuDebugContribution" |
| targetID="org.eclipse.statet.r.menus.REditorRulerMenu"> |
| <action |
| id=".EnableDisableBreakpoint" |
| class="org.eclipse.debug.ui.actions.RulerEnableDisableBreakpointActionDelegate" |
| label="%menus_EnableDisableBreakpoint_label" |
| menubarPath="debug"> |
| </action> |
| <action |
| id=".ToggleBreakpoint" |
| class="org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate" |
| definitionId="org.eclipse.debug.ui.commands.ToggleBreakpoint" |
| icon="icons/obj_16/r_breakpoint.png" |
| label="%menus_ToggleBreakpoint_label" |
| menubarPath="debug"> |
| </action> |
| </viewerContribution> |
| </extension> |
| <extension |
| point="org.eclipse.ui.menus"> |
| <menuContribution |
| locationURI="popup:org.eclipse.statet.r.menus.REditorContextMenu?before=additions"> |
| <separator |
| name="Debug.R" |
| visible="true"> |
| </separator> |
| <command |
| commandId="org.eclipse.jdt.debug.ui.commands.Inspect"> |
| <visibleWhen |
| checkEnabled="false"> |
| <with |
| variable="debugContext"> |
| <count value="+"/> |
| </with> |
| </visibleWhen> |
| </command> |
| <command |
| commandId="org.eclipse.statet.r.commands.InspectAttributes"> |
| <visibleWhen |
| checkEnabled="false"> |
| <with |
| variable="debugContext"> |
| <count value="+"/> |
| </with> |
| </visibleWhen> |
| </command> |
| <command |
| commandId="org.eclipse.jdt.debug.ui.commands.Watch"> |
| <visibleWhen |
| checkEnabled="false"> |
| <with |
| variable="debugContext"> |
| <count value="+"/> |
| </with> |
| </visibleWhen> |
| </command> |
| <separator |
| name="Debug.R.additions" |
| visible="true"> |
| </separator> |
| </menuContribution> |
| </extension> |
| <extension |
| point="org.eclipse.ui.workbench.texteditor.hyperlinkDetectors"> |
| <hyperlinkDetector |
| id="org.eclipse.statet.r.hyperlinks.StepIntoSelectionDetector" |
| targetId="org.eclipse.statet.r.editorHyperlinks.REditorTarget" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.StepIntoSelectionHyperlinkDetector" |
| name="%hyperlinks_StepIntoSelection_name" |
| activate="false" |
| modifierKeys="M1+M3"> |
| </hyperlinkDetector> |
| </extension> |
| <extension |
| point="org.eclipse.statet.ltk.AdvancedInfoHover"> |
| <hover |
| id="org.eclipse.statet.r.infoHovers.RDebug" |
| contentTypeId="org.eclipse.statet.r.contentTypes.R" |
| name="Element Info from R Console" |
| class="org.eclipse.statet.internal.r.debug.ui.actions.RDebugHover"> |
| </hover> |
| </extension> |
| |
| </plugin> |