house fly

JSwat Project

Design: Panels


*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.

*Views

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.



Back to Design page