COMP: Update External_teem to download source archive from Slicer3-lib-mirrors repository.

See http://viewvc.slicer.org/viewvc.cgi/Slicer3-lib-mirrors?view=revision&revision=180

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18948 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: If it applies, specify a revision/tag for each external project.

* Also set UPDATE_COMMAND to be empty to avoid extra network activity.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18949 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: cropped volume should not be under any transform


git-svn-id: http://svn.slicer.org/Slicer4/trunk@18950 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Cleanup node IDs

Following r18903, this commit fixes the case a)

New behavior:
 - Singleton nodes (vtkMRMLNode::SingletonTag != 0) IDs are now: "vtkMRMLnode::ID" + "vtkMRMLNode::SingletonTag", e.g. "vtkMRMLSliceNodeRed", "vtkMRMLSelectionNodeSingleton"... No incrementing index is used.
 - Default node name (when a node with no name is added into the scene) is vtkMRMLNode::NodeTagName and not vtkMRMLNode::ID
 - When a node ID is changed, vtkMRMLNode fires the event vtkMRMLNode::IDChangedEvent.
This allows qMRMLSceneModel to update its internal map of node IDs.
 - Only the scene and the scene view node can change the ID of the node.
It is no longer possible to request a node ID (vtkMRMLScene::RequestNodeID doesn't exist anymore).
The singleton tag of the vtkMRMLColorNode need to be set before adding the node to the scene.
 - vtkMRMLScene::GetUniqueNameByString() is obsolete, it is kept for compatibility reasons (big code impact), vtkMRMLScene::GenerateUniqueName() should be used instead.
 - Add utility method vtkMRMLScene::GetFirstNodeByName()

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18951 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: add handling of the ROI parent transform


git-svn-id: http://svn.slicer.org/Slicer4/trunk@18952 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Update CTK tag - Specify CMake variable type when passing CMAKE_OSX_* variables

Resolve CTK issue #124
See https://github.com/commontk/CTK/issues/124

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18953 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: vtkMRMLProceduralColorNode doesn't use Types

Use Name instead to give the singleton a value (in vtkMRMLColorLogic).

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18954 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Don't instantiate widgets if Slicer is run in no-mainwindow mode

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18955 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix singleton tag of a file color node

SingletonTag is "File[file_name]" (e.g. "FileGenericColors.txt")
ID is: "vtkMRMLColorTableNodeFile[file_name]" (e.g. "vtkMRMLColorTableNodeFileGenericColors.txt")

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18956 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Install and require Qt SVG library. Fixes #1621

* Since the libqvg imageformat plugin was provided by the installer whereas
 the libQtSVG associated library wasn't, on a system where a set of
Qt libraries was already installed, if the version of provided libraries
and the one already installed were different, the plugin dependency were
resolving to the incorrect one.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18957 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: FreeSurfer - Fix style, remove unneeded includes from header file, remove VTK 4 code

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18958 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: FreeSurfer - Explicitly list VTK dependencies to avoid overlinking

* Overlinking has multiple issues:
  - Packaging is more difficult
  - Debugging dependency issue is more tedious
  - Loading time of binaries could increase

* When VTK 6 will be out, it will be possible to specify the VTK components
using find_package(VTK COMPONENTS ...)

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18959 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Memory in ChangeTrackerTest1 when using CreateNodeByClass

vtkMRMLScene::CreateNodeByClass is not correctly wrapped by Python, the
returned pointer needs to have its reference count being decreased when
the python variable goes out of scope.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18960 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Explicitly list VTK dependencies (in attempt) to avoid overlinking

* Overlinking has multiple issues:
      - Packaging is more difficult
      - Debugging dependency issue is more tedious
      - Loading time of binaries could increase

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18961 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Rename variable Slicer_*_VERSION into Slicer_VERSION_* to be consistent with CMake convention.

See http://www.cmake.org/cmake/help/cmake-2-8-docs.html#command:find_package

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18962 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Configure SlicerConfigVersion.cmake so that find_package(Slicer X.Y.Z) works

See http://www.cmake.org/Wiki/CMake/Tutorials/How_to_create_a_ProjectConfig.cmake_file

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18963 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Set CTEST_CONFIGURATION_TYPE in the driver script. Fixes #1532

Since CMake 2.8.2, CTEST_CONFIGURATION_TYPE should be defined to
resolve issue 2336. See http://www.cmake.org/Bug/view.php?id=2336

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18964 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Move extension specific code from SlicerConfig.cmake to UseSlicer.cmake

* Doing so will allow to invoke find_package(Slicer) avoiding extension
specific setup and sanity checks.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18965 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: SlicerBlockBuildPackageAndUploadExtensions - Use Slicer_BINARY_DIR instead of Slicer_BINARY_DIR

* Allow to decouple the extension build system from Slicer one.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@18966 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Change stdio.h, errno.h, stdlib.h into their corresponding c++ includes.

See http://www.cplusplus.com/reference/clibrary/

The C++ library includes the same definitions as the C language library
organized in the same structure of header files, with the following
differences:

    Each header file has the same name as the C language version but
with a "c" prefix and no extension. For example, the C++ equivalent
for the C language header file <stdlib.h> is <cstdlib>.
    Every element of the library is defined within the std namespace.

Nevertheless, for compatibility with C, the traditional header names
name.h (like stdlib.h) are also provided with the same definitions
within the global namespace. In the examples provided in this reference,
this version is used so that the examples are fully C-compatible,
although its use is deprecated in C++.

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