The package that collects all classes related to the View and the management
of Views.
Views have an expanded and a summary (collapsed) state. Views are implemented as a tuple of a Panel for the expanded state and a Panel for the collapsed state, managed by a ViewPanel that shows the correct Panel when necessary. The ViewPanel objects also handles showing proper decorations around and resizing-handles. These ViewPanel objects are held together in the ViewsManager. The ViewsManager exports a JContainer that a program can put in their main window to show all the Views.
To use Views in a program
A program that wants to use the Views system needs to
AbstractViewFactoryInterface actually does not want a JComponent directly
for the expanded state pf the view, it expects an object implementing ViewAndControlsInterface.
ViewAndControlsInterface has a call to get the JComponent that makes
up the expanded state of the view, getPodContent() which may not return null,
but also two other calls for the controls that appear in the top line of
a View in its expanded state. Either one of these two calls can return null,
and, if so, the ViewPanel will be able to deal with that.
To set the look for Views
ViewPanel does all the decoration for the Views, ViewsManager does nothing.
ViewPanel reads in which decoration to use from resources/ViewPanel.properties.
The corners of a ViewPanel are simple gif images in a JPanel that the ViewPanel
put on each corner, the borders are repetitions of gif images in a JPanel
that the ViewPanel puts on the sides. The width or height of these borders
depends on the width or height of the images in the corners.