BUG: #2990 use conventional layout if saved layout not available

When a module or extension creates a custom layout the number (say, 100)
is saved in the settings file and slicer tries to restore that
on the next start up.  However these layouts can be transient creations
and won't be available at startup.  This patch improves handling of
that case - rather than printing a warning and showing a blank screen, the
program now starts with the regular layout which leads to less
user confusion.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22142 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #3014 fix databundle save/restore for dicom volumes

Fix a hole in the logic where a dicom volume would have a storage
node allocated, but the storage type would not be correctly defined
so the temp save path would not work.  Plus the default name
would be set to an invalid filename since dicom volume nodes
have a colon in the string by default.  Now these files are given
a default extension type (.nrrd for scalar volumes) and the names
are percent-encoded to avoid bad file name issues.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22143 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Enable MultiVolumeImporter only if Numpy support is enabled

Since the module depends on numpy, excluding the module will avoid
startup error when the module is loaded when numpy support is disabled.

A better approach could consist in teaching the module how to detect if
numpy is available and fail graciously by reporting a warning. A issue has
been reported upstream. See https://github.com/fedorov/MultiVolumeImporter/issues/6

Co-authored-by: Chrystel Juan <chrystel.juan@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22144 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: select the loaded multivolume on import, to be consistent with other plugins; resolves #2844


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22145 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #3014 fix failing MRB condition where . was missing from extension

This is a follow on fix for r22143 to handle the case where the filename
already has the correct extension.  Before this fix a situation
could arise where the filename would be something like ".nrrdnrrd" and
so it would fail to save.  Now it is correctly saved as ".nrrd".

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22146 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: #2543 small changes to documentation for FiberBundleToLabelMap

Clean up the documentation and improve the display of the name.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22147 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #2948 save updated MRB file name for next save step

The URL instance variable of the scene is used to store
the source / destination of the scene, so it needs to be
set for use as the default for the next save operation.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22148 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: #1419 show scene path in DataProbe

We could consider someday moving this information
to the mainWindow with the setWindowTitle method.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22149 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #2203  better instructions for Endoscopy module

The module's help and wiki page have been updated to better
describe the use of the module.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22150 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Give user control over the number of decimals in spinboxes

Adding decimals is now possible in spinboxes.
Note that this work is orthogonal to units but not incompatible.
Closes #2973, #2986

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22151 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add control over decimals in Transforms module

Closes #2480, #2579

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22152 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Disable auto enabling for qMRMLCoordinatesWidget

The dimension coordinate widget in Volumes should stay disabled.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22153 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix python build error occurring when using VisualStudio with Ninja

This has been tested on Visual Studio 2008, 2012, and 2012+Ninja

See https://github.com/davidsansome/python-cmake-buildsystem/pull/23

From: Isaiah Norton <inorton@bwh.harvard.edu>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22154 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: adding self-test in an attempt to reproduce the crash in issue 3117


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22155 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: --inputimage and --outputimage are absolute flags of N4ITKBiasFieldCorrection

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22156 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: #1930 Don't scroll past edges of volumes

Now the arrow keys and mouse wheel events are clamped to the range
of the volumes in the z direction of the slice views like the view
controller's sliders are.  This prevents 'runaway' scrolling and losing
the slice.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22157 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: setting inputs to NULL when selectors not initialized; attempt to fix 3117


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22158 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add depth peeling option in 3D view controller

Closes #1798

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22159 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: #1879 hotkeys to cycle through volumes

Added left/right bracked [ and ] to cycle through background layer
and left/right brace { and } to cycle through foreground layer.

Label layer is not included since labels can be seen in foreground
layer.

Also remove some trailing spaces for sytle purposes.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22160 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: enable reading of GE DWI trace multi-volumes, which was not possible to properly read using any existing functionality of Slicer


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