![]() |
JSwat ProjectDesign: Panels |
Most of the display areas in JSwat will be implemented as "panels". These are JFC-like components that encapsulate a UI component and the model that holds data to be displayed. In the case of a debugger front-end, the data is usually maintained by the debugger back-end. The JSwat panels interface with the JPDA to acquire the necessary data.
Presently, panels will display the threads, classes, local
variables, data members, error messages, and the like. Each panel
is specialized for the type of information it will display. In most
panels, either a JList, JTree, or JTable is used to display the
debugging information. The panels are kept up-to-date via a
refresh
function. This is invoked by the
Session
object whenever an appropriate event has
occurred.
Panels may also listen for JPDA events on their own and refresh and update the panel as necessary.
So far, the only type of data that is not displayed in a panel is a source code file. This is displayed in a "view" object. In the case of a view, the data does not come from the debugger. Instead, it may come from the local hard drive or other resource.
Views may also listen for JPDA events on their own and refresh and update the view as necessary.