BUG: Disable units module

Considering Na-mic week is happening next week, we decided to force
the "units" module to be ignored. Waiting the underlying issues are
resolved, this commit will prevent issue #3152 from occurring.

See http://www.na-mic.org/Bug/view.php?id=3152

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22095 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Check required Visual Studio compiler version

Configuration will abort if:

 1) Visual Studio smaller than 2008 is detected

 2) Visual Studio 2008 without service pack 1 is detected

From: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22096 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fixes calls to slicer.util.moduleNames()

In commit r19334 [1], the moduleNames() function has been renamed
to "loadedModuleNames" but the corresponding function in slicer.util
hasn't been renamed.

This commit fixes slicer.util.moduleNames() so that it calls
"loadedModuleNames" function.

Fixes #2591

[1]http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=19334

From: Christopher Mullins <christopher.mullins@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22097 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Optimize visual studio service pack check

In commit r22096, the CMake module "CMakeDetermineVSServicePack" was used.
In addition to invoke some extra "try_compile" statement increasing
the configure time, it was failing complaining dll mspdb80.dll or
mdpdb100.dll were missing.

This commit fixes the problem by directly using "CMAKE_CXX_COMPILER_VERSION"

Thanks to Brad Lowekamp for his help elaborating this set of patches.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22098 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: update the slicer.modules.<module>Widget attribute on reload

This way the attribute can be used consistently to access the gui
of the scripted module before or after it has been reloaded.

Also add an optional cleanup method, which module guis can use, for
example, to remove any observers to vtk objects or clean up other
references.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22099 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix CLI extension test fixing SEM_LAUNCH_COMMAND

Following commit r21737 [1], CLIs tests have been updated to make
use SEM_LAUNCH_COMMAND so that their code is decoupled from Slicer
specific variables.

This commit ensure that SEM_LAUNCH_COMMAND is updated to consider additional
settings so that environment is properly set when running CLI modules test
bundled in extension.

[1] http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=21737

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22100 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Do not default to CDash extension upload if Midas upload failed.

By uploading the extension package on CDash in case the midas one failed
was confusing the user. Indeed, after checking the dashboard, the small
package submission was visible but not associated with a midas url.

This commit return an explicit error message and abort the build process
providing the user with hint on how to resolve the issue.

The message that will be disable will be similar to:

// ------------------
CMake Error at /home/jchris/Projects/Slicer-AHM/Extensions/CMake/SlicerBlockBuildPackageAndUploadExtension.cmake:231 (message):
  Upload of [22100-linux-amd64-MyExtension-local0-2013-06-16.tar.gz] failed !

  Check that:

    (1) you have been granted permission to upload
    (2) your email and api key are correct
// ------------------

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22101 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Removed warning of unused parameter via itkNotUsed macro


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22102 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Removed warning of no tests, because there are in expertregistration...


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22103 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Refactor DWIConvert and improve scanner support

// ------------------
From Kent Williams
Source: http://slicer-devel.65872.n3.nabble.com/ANNOUNCE-New-DWIConvert-version-td4028665.html

I'm sure the thronging multitudes who live or die by Diffusion Tensor
Imaging will be dancing in the streets.
DWIConvert, the program for convertion Diffusion Weighted Image datasets
from DICOM to NRRD and FSL image formats has been extensively refactored.

My primary goal was to make the program easier to enhance and maintain.
What was a very long and convoluted single function is now split out into
a set of classes, one per Scanner Manufacturer.  All the
scanner-independent code is isolated from the scanner-specific code.

Along the way it has been enhanced in a couple of ways:

1. Some fixes to accomodate the surprisingly varied output of Siemens and
GE scanners.
2. Addition of a HITACHI scanner type.

The HITACHI scanner code has only been tested on one example dataset; I
don't know how many scanners they make or if different models/software
versions encode Gradient Vectors differently.  From some web
documentation, it seems they follow the Supplement 49 standard for
diffusion data, and the user who requested Hitachi scanner support said
that the code worked fine for him.

If you happen to run across another scanner that is not yet supported, the
HITACHI converter would be a good starting point for adding a new device.

In the course of debugging this new version, I first verified that it
passed the included regression tests.  Then, I did an exhaustive
comparison of the new version's output with the over 3700 DWI DICOM
datasets we have already converted for the PredictHD Research project. So
I have high confidence that the new version is reliable enough for
production work.
// ----------------

Updating BRAINSTools also fixes various bugs and issues. For a complete
list, see https://github.com/BRAINSia/BRAINSTools/compare/bc4adf7465300b7553a64e35035d05ee8a6407da...8fa5dd3c6d898461df184546faa165baeacbf0aa

From: Kent Williams <norman-k-williams@uiowa.edu>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22104 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Update ModuleWizard to support *.cmake file

This will allow to successfully use the wizard against the
SuperBuild extension template.

Co-authored-by: Marine Clogenson <marine.clogenson@epfl.ch>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22105 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Update ModuleWizard help message to consider template renaming

Following r21776, the superbuild extension template has been renamed. This
commit fixes the Wizard accordingly.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22106 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Update BRAINSTools to remove outdated DWIConvertOld

Old code was conflicting in Slicer, so it was removed.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22107 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix crash when saving data

Commit r22095[1] intended to disable "unit" functionality by
preventing the associated logic from being loaded.

This commit comments the "unit" code associated with the selection node
to fix crash happening when saving data.

See http://www.na-mic.org/Bug/view.php?id=3176
Fixes #3176

[1] http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=22095

Co-authored-by: Marine Clogenson <marine.clogenson@epfl.ch>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22108 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add loadedNodes return in qSlicerIOManager::openDialog

* loadedNodes: It can be useful to know which nodes have been loaded
by the dialog.
* qSlicerStandardFileDialog supports "defaultFileName" property

Conflicts:
	Base/QTGUI/qSlicerFileDialog.cxx
	Base/QTGUI/qSlicerFileDialog.h

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22109 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Make a Qt Designer plugin for qSlicerCLIProgressBar

* Add qSlicerCLIProgressBar::statusVisibility
* Add qSlicerCLIProgressBar::progressVisibility

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22110 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Zombie display node when turning a volume into labelmap

When the current display node was removed, the slicer layer logic was
creating a new node and adding it into the scene.
Such node was not being removed of the scene when the new display node
was set.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22111 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkSlicerVolumesLogic::CenterVolume()

Note that the code is from qMRMLVolumeInfoWidget

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22112 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Improve vtkMRMLCommandLineModuleNode python wrapping

Python doesn't wrap enum type, making the SetStatus method unavailable
in the scripted module. Using an int instead fixes this.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22113 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Expose _CPACK_PACKAGE_ICON for icns icon on mac packaging

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