Fill overlay shape rather than its bounds

git-svn-id: http://code.imagej.net/svn/imagej/trunk@5313 be23795f-a60e-40d4-ba19-055798872e57
Initial and partial mods for refactoring

Authored-by: Lee Kamentsky
First pass done - ready to see if images display

Authored-by: Lee Kamentsky
This checkin displays the boat sample image

It also lets you run the Add Noise plugin too.

Authored-by: Lee Kamentsky
ImageCanvas refactor + rework of canvas helper

Authored-by: Lee Kamentsky
Many changes to synchronize zooming and panning

Authored-by: Lee Kamentsky
Improve AbstractImageDisplayViewer

Made AbstractImageDisplayViewer check the activated display against a
display, not a display viewer - fixes bug that prevented the cursor from
being restored.

Authored-by: Lee Kamentsky
Improved event processing and window resizing

Also rework ZoomToFit so that it doesn't have to translate from image
coordinates to panel just so that ImageCanvas can back-translate to
image coordinates.

Authored-by: Lee Kamentsky
Made MDI mvn profile work

Authored-by: Lee Kamentsky
Moved event handling for display viewers to the UI

It is now synchronized on the UI. This guarantees that
DisplayCreatedEvent finishes before the first DisplayUpdatedEvent is
processed.

Authored-by: Lee Kamentsky
Improve display activation model

Changed activation model so that you ask the display service to activate
and it manages the activation. Because of this,
DisplayService.getActiveDisplay is definitive - the value returned is
the target active display, even if several display activation events are
in the queue. Also changed the Swing user interface service to respond
to an activation only after any current events have been processed and
to do so on the currently active display. The UI synchs to the
activation model after all user interactions have been digested.

Authored-by: Lee Kamentsky
Fix author tags to be at the bottom of the javadoc

This is necessary because otherwise Javadoc interprets the actual
javadoc as part of the author tag. Supplemental tags (@author, @return,
etc.) should always go below the javadoc block proper.
Clean up headers to please bin/check-headers.pl

This change also cleans up a few import blocks.
Remove obsolete AWT-based image canvas
Propagate DisplayUpdatedEvents in a better way

DisplayUpdatedEvent was queued before DisplayCreatedEvent was processed
by UI. JHotDrawImageCanvas was registering for DisplayUpdatedEvent after
it was published, so it never got the first one. I've changed it so that
the Swing user interface's DisplayUpdatedEvent handler propagates the
event downward through the displayViewer, pane and canvas and that's
registered at startup.

Authored-by: Lee Kamentsky
Fix NPE if bad execution order on viewer init

Authored-by: Lee Kamentsky
Fix preferred sizes for various Look and Feels

This fix calculates the correct preferred size for Nimbus, Motif and
Windows look and feel. My reasons for doing so are a product of my
ancestral numerological training and have no basis in reality.

Authored-by: Lee Kamentsky
Rename SwingDatasetView and SwingOverlayView

These classes are no longer actually DatasetViews or OverlayViews, but
rather FigureViews.
Use Log.debug for debugging statement