### Debug UI Utility Classes

In addition to defining a general framework for showing a debug UI, the debug UI plug-in includes classes that implement useful utility methods for implementing a debugger UI.

DebugUITools groups many of these utilities and includes methods for the following:

- Saving and/or building the workspace before launching a particular launch configuration
- Storage and retrieval of images on behalf of debug UI clients
- Lookup of the debug model presentation associated with a given debug model
- Retrieval of the debug plug-in preference store
- Information about the current program under debug, such as the current context, process, or console
- Opening the launch configuration dialog with various defaults
- Enabling or disabling the use of step filters

IDebugView provides common functionality for debug views. It provides access to an underlying viewer and its debug model presentation. Typically, clients should extend AbstractDebugView rather than implement the interface from scratch. AbstractDebugView provides many useful functions:

- Storage of actions in an action registry
- Generic handling of the underlying viewer's context menu
- General implementations of delete key and double click function
- Mechanism for displaying an error message in the view