BUG: stop the dropping of fiducials dragged outside of 2d viewport

Check if the viewport coordinates have been restricted as well as if the display
coordinates were changed, as the second check wasn't fine grained enough
to detect when a restriction was made on a slow/small drag outside
of the viewport. This would lead to the fiducial being dropped
when it was outside the viewport.
Now the fiducial is stopped at the edge of the 2d viewport. When the
mouse comes back toward the view port, there is an offset between the
mouse position and the moving fiducial, but barring more user feedback,
we decided to leave this as is.

Issue #3318


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22339 3bd1e089-480b-0410-8dfb-8563597acbee