Provides a generic debugger user interface that clients may customize via standard workbench extension points.

## Package Specification

The Eclipse platform debug UI plug-in provides a set of classes and interfaces to support a language independent debugger user interface. A generic debug perspective is provided with a common set of views. Clients contribute actions to the debug views via the standard workbench extension points.

#### The Debug View

The debug view presents a tree of launched programs in debug and non-debug (run) mode. The view provides support for standard interactions such as terminating, stepping, suspending, and resuming threads, debug targets, and processes. The debug view is linked to an editor view, variable view, and console. The editor view is used to display source code for stack frames. A selection in the debug view causes the line of code being executed to be highlighted in the editor view. The variable view shows the visible variables in the selected stack frame, and the console view handles I/O for the debuggable process.

#### The Variables View

The variables view presents a tree of variables for the currently selected stack frame. A "details" area may be hidden/shown which provides a detailed description of the selected variable. For example, the Java debugger displays the result of invoking 'toString()' on the selected variable in this area.

#### The Breakpoints View

The breakpoints view presents a list of all breakpoints currently defined in the workspace. It supports enabling/disabling and breakpoint removal.

#### The Expression View

The expression view presents a tree of expressions and their corresponding values.

#### Debug Model Presentation

The debug UI plug-in defines an extension (org.eclipse.debug.ui.debugModelPresentations) point to allow implementations of debug models to provide custom rendering and presentation of its debug elements. Extensions are registered for a specific debug model. It is intended that an implementation of a debug model will also provide an implementation of a debug model presentation. The presentation provides:

- an image for a debug element or breakpoint
- a label for a debug element or breakpoint
- an editor input and editor id used to display a debug element, breakpoint, or source element
- a detailed description of a variable value, used to display in the "details" section of the variables view

#### Launch Configuration Dialog

The debug UI plug-in provides a lanuch configuration dialog for creating and editing launch configurations. Clients may contribute tabs to the launch configuration dialog via the launchConfigurationTabGroup extension point.