Package org.eclipse.debug.ui.actions

## Interface IToggleBreakpointsTargetExtension2

All Superinterfaces:
  `IToggleBreakpointsTarget`, `IToggleBreakpointsTargetExtension`

    public interface IToggleBreakpointsTargetExtension2
    extends IToggleBreakpointsTargetExtension

Extension interface for `IToggleBreakpointsTargetExtension`. This interface provides the ability to inspect the key modifiers being used when toggling a breakpoint. This allows targets to choose the type of breakpoint to create when the user double-clicks in the vertical ruler.

Clients implementing `IToggleBreakpointsTarget` or `IToggleBreakpointsTargetExtension` may optionally implement or adapt to this interface.

Since:
  3.8
See Also:
  `ToggleBreakpointAction`

### Method Summary

All Methods Instance Methods Abstract Methods
`boolean` `canToggleBreakpointsWithEvent​(IWorkbenchPart part, ISelection selection, Event event)` Returns whether breakpoints can be toggled on the given selection with the given `Event`.
`void` `toggleBreakpointsWithEvent​(IWorkbenchPart part, ISelection selection, Event event)` Creates or removes existing breakpoints based on any modifiers in the given `Event`.

### Methods inherited from interface org.eclipse.debug.ui.actions.IToggleBreakpointsTarget

`canToggleLineBreakpoints, canToggleMethodBreakpoints, canToggleWatchpoints, toggleLineBreakpoints, toggleMethodBreakpoints, toggleWatchpoints`

### Methods inherited from interface org.eclipse.debug.ui.actions.IToggleBreakpointsTargetExtension

`canToggleBreakpoints, toggleBreakpoints`

### Method Detail

#### toggleBreakpointsWithEvent

    void toggleBreakpointsWithEvent​(IWorkbenchPart part,
                                    ISelection selection,
                                    Event event)
                             throws CoreException

Creates or removes existing breakpoints based on any modifiers in the given `Event`. The selection varies depending on the given part. For example, a text selection is provided for text editors, and a structured selection is provided for tree views, and may be a multi-selection.

Parameters:
  `part` - the part on which the action has been invoked
  `selection` - selection on which line breakpoints should be toggled
  `event` - the accompanying `Event` which can be `null` if unavailable
Throws:
  `CoreException` - if unable to perform the action

#### canToggleBreakpointsWithEvent

    boolean canToggleBreakpointsWithEvent​(IWorkbenchPart part,
                                          ISelection selection,
                                          Event event)

Returns whether breakpoints can be toggled on the given selection with the given `Event`. The selection varies depending on the given part. For example, a text selection is provided for text editors, and a structured selection is provided for tree views, and may be a multi-selection.

Parameters:
  `part` - the part on which the action has been invoked
  `selection` - selection on which line breakpoints should be toggled
  `event` - the accompanying `Event` which can be `null` if unavailable
Returns:
  whether breakpoints can be toggled on the given selection with the given `Event`