Prevent pixel calibration from running for multi-component cameras.

It won't work anyway; it tries to cast a byte[] to an int[]. At least we fail
a bit more gracefully now.

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14523 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Add a function to get the largest possible window size.

git-svn-id: https://valelab.ucsf.edu/svn/micromanager2/trunk@14524 d0ab736e-dc22-4aeb-8dc9-08def0aa14fd
Rework the pack() override in DisplayWindow.

This fixes a bug causing the DisplayWindow to be gigantic when showing large
images (e.g.2kx2k), and also simplifies the logic somewhat. We do still have
a bug lurking around that causes the canvas to show its "zoom indicator" when
the zoom level is 33% or 16% because the canvas is 2px too small to fit.
However, the current behavior is a definite step up from the old behavior.

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