Fix bug causing errors when resizing image windows

The errors occurred because we need to determine the maximum allowable window
size whenever we repack the DisplayWindow, and the max allowed size depends
on the display that the window is on -- which we determine by using the
window's top-left coordinate. However that coordinate may be zero (if you drag
the window partially off-screen), which caused us to be unable to determine
what display the window was on, which in turn caused a NullPointerException.
The fix is to replace any negative window coordinates with 0.

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14575 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Better implementation of the previous fix.

Since it is possible for the user to have a secondary display to the left of
the primary display, negative coordinates should not *always* be replaced by
0; this should only happen after we fail to find a display containing the
negative coordinates.

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14576 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
MultiChannelShading: Add MigLayout library

(Fixes build.)

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14577 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Plug memory leak in display window

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14578 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Rename Java Image Processors to On-The-Fly Processors

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14579 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Fix on-the-fly processor menu item

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14580 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Improve help text in processor pipeline window

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14581 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Add comment re RAM storage memory use

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14582 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd