diff options
Diffstat (limited to 'debug/org.eclipse.cdt.debug.ui')
-rw-r--r-- | debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java index 642ad191b6a..5f8a8d328ed 100644 --- a/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java +++ b/debug/org.eclipse.cdt.debug.ui/src/org/eclipse/cdt/debug/internal/ui/actions/ShowFullPathsAction.java @@ -16,8 +16,11 @@ import org.eclipse.cdt.debug.internal.core.ICDebugInternalConstants; import org.eclipse.cdt.debug.internal.ui.CDebugModelPresentation; import org.eclipse.cdt.debug.ui.CDebugUIPlugin; import org.eclipse.debug.core.DebugPlugin; +import org.eclipse.debug.core.IBreakpointManager; import org.eclipse.debug.core.ILaunch; import org.eclipse.debug.core.ILaunchManager; +import org.eclipse.debug.core.model.IBreakpoint; +import org.eclipse.debug.internal.ui.views.breakpoints.BreakpointsView; import org.eclipse.debug.internal.ui.views.launch.LaunchView; import org.eclipse.debug.ui.IDebugModelPresentation; import org.eclipse.debug.ui.IDebugView; @@ -100,6 +103,21 @@ public class ShowFullPathsAction extends ViewFilterAction { } } } + + // Breakpoints view + else if (view instanceof BreakpointsView) { + IBreakpointManager bkptmgr = DebugPlugin.getDefault().getBreakpointManager(); + IBreakpoint[] bkpts = bkptmgr.getBreakpoints(); + for (IBreakpoint bkpt : bkpts) { + try { + Object attr = bkpt.getMarker().getAttribute(ICDebugInternalConstants.ATTR_CAPABLE_OF_SHOW_FULL_PATHS); + if (attr != null) { + setEnabled(true); + return; + } + } catch (Exception e) {/* ignore */} + } + } super.selectionChanged(action, selection); } } |