ENH: adding default method for initializing of the node-specific display node

From: fedorov <fedorov@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22437 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: print out widget projections

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22438 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fixing a Markups merge error for the active place node

The more general activePlaceNodeID is to be used instead of a specific
Annotations or Markups variable name.

Fixed while working on issue #3296 for the 4.3.1 release.

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22439 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix missing conversion of fiducials in scene views

Annotation fiducials in scene view scenes were coming up as unsaved in the Save
data dialog when loaded from a scene with scene views where only the current
scene had had it's fiducials conerted to markups. This was due to the change
Alex made to save data that only appears in scene views, so added in
iterating over the current scene and scene views when converting fiducials.
Added in looking for end scene restore events in the GUI so that it will
be updated properly even if there wasn't an active place node id in the saved scene view.
Expanded the AddNewFiducialNode method to support adding to a passed in scene so
that the converted markups can be added to the scene view scenes.

Issue #3296

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22440 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: update Annotatons module documentation for 4.3

Removed references to fiducials as they've been moved into the Markups module.

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22441 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix memory mgt in PythonQt, ENH: Config of dicom log level from python

// ---------------------------------------

CTK Commits:

Author: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
Date:   Tue Sep 10 04:27:56 2013 -0400

    Re-factor ctkDICOMUtil to be consistent with ctkUtil

    Add the methods dicomLogLevel and setDICOMLogLevel to "ctk" namespace

    Update PythonQt external project to include fix allowing to wrap
    QFlags.

    The DICOM log level can be set from python doing:

     >>> import ctk
     >>> ctk.ctk.dicomLogLevel()
     16
     >>> ctk.ctk.dicomLogLevelAsString()
     u'Info'
     >>> ctk.ctk.setDICOMLogLevel(ctk.ctkErrorLogLevel.Critical)
     >>> ctk.ctk.dicomLogLevel()
     256
     >>> ctk.ctkErrorLogLevel.logLevelAsString(ctk.ctk.dicomLogLevel())
     u'Critical'
     >>> ctk.ctkErrorLogLevel.logLevelAsString(32)
     u'Warning'
     >>> ctk.ctk.setDICOMLogLevel(64)
     >>> ctk.ctk.dicomLogLevelAsString()
     u'Error'

commit 637da4b68ed93741a4c8cf73b406d66986dbe864
Author: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
Date:   Tue Sep 10 04:12:10 2013 -0400

    Define ctkErrorLogLevel::logLevelAsString as static for easier re-use

    Explicitly add associated decorator. See code comment for explanation.

commit 8542108ef7d15a39d4d302aa64f4ecc2d15bf3e5
Author: Isaiah Norton <inorton@bwh.harvard.edu>
Date:   Wed Aug 28 11:20:31 2013 -0400

    Add ctkDICOMUtil and ::setDICOMLogLevel helper

    This function allows to set the DICOM log level for
    diagnostic purposes.

// ---------------------------------------

PythonQt commits:

commit e1f1c77d9675c3c5fb1cba19d2a32ace483eda2c
Author: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
Date:   Tue Sep 10 02:49:23 2013 -0400

    Revert part of r91 preventing QFlags from being wrapped

    By checking if an enum member has already been cached it is not required
    anymore to skip it if is a QFlags.

    Additionally, the wrapping of QFlags can now be done by using
    only Q_FLAGS without having a corresponding Q_ENUMS.

commit 5d5600c4d3134e69b51442a58b58e14c7fd47e54
Author: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
Date:   Tue Sep 10 02:36:26 2013 -0400

    Add CMake testing support

    Disabled by default to keep behavior consistent with previous
    CMake'ified version.

[...]

commit 7af5c8a4d2194db388ac67f340e3f555e02fea78
Author: florianlink <florianlink@ea8d5007-eb21-0410-b261-ccb3ea6e24a9>
Date:   Wed Jul 3 14:54:20 2013 +0000

    improved wrapper check to avoid crashes on virtual methods while python object gets deleted

    git-svn-id: http://svn.code.sf.net/p/pythonqt/code/trunk@245 ea8d5007-eb21-0410-b261-ccb3ea6e24a9

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22442 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Add close button to "About dialog". Fixes #3172

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22443 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Update Editor extension template to use scripted module macro

Discussion: http://slicer-devel.65872.n3.nabble.com/Issues-with-Editor-effect-extension-td4029730.html

Fixes #3392

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22444 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Simplify editor extension template

This is a follow up of commit r22067 [1] where it should have been done
as described in r22063 [2].

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22445 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Set module name / objectName in GenericTests

In addition to be consistent with what is done in the "instantiateModule"
method of the "qSlicerAbstractModuleFactoryManager".

It also ensure that the "ModuleShareDirectory" set in the "logic" method
of the "qSlicerAbstractCoreModule" class is done using the expected
value for the module name.

This will allow generic tests instantiating module using
"GetModuleShareDirectory" method to get the correct value (i.e Reporting
module)

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22446 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Allow extension to easily use "SlicerMacroExtractRepositoryMacro"

As consequence the code within the Reporting will be simplified and
duplicated macro will be removed.

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22447 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: add missing StartPlaceMode method

Laurent's extension was using the Annotation module logic
StartPlaceMode call and it wasn't working. Added it to
Markups logic and debugged it to work to set the mouse
mode to place Markup fiducials. Added a return boolean
to check success. Updated testing.

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22448 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: finish steps for the Neurosurgical Planning Tutorial

Added the editor steps and label map seeding.
Added the screen capture functionality to the template file.

Issue #3328

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22449 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fix error on start up from SurfaceToolbox

Add in import string to fix start up error when
trying to load the SurfaceToolbox scriptable module:

Traceback (most recent call last):
  File "/projects/birn/nicole/Slicer42/Slicer4-SuperBuild-Debug/Slicer-build/lib/Slicer-4.3/qt-scripted-modules/SurfaceToolbox.py", line 11, in __init__
    parent.helpText = string.Template("""
NameError: global name 'string' is not defined

From: naucoin <naucoin@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22450 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix CTKConfig.cmake to properly set _{LIBRARY,INCLUDE}_DIRS variable

For example, within CTKConfig.cmake:

* Before this commit:

[...]
set(CTKVisualizationVTKCore_LIBRARY_DIRS "VTK_LIBRARY_DIRS;/path/to/VTK-build/bin")
[...]

set(CTKVisualizationVTKWidgets_INCLUDE_DIRS
  [...]
  "/path/to/CTK-build/Libs/Core;"
  "/path/to/CTK/Libs/Visualization/VTK/Core;
  "/path/to/CTK-build/CTK-build/Libs/Visualization/VTK/Core;"
  "VTK_INCLUDE_DIRS;"
  "/path/to/VTK-build;"
  "/path/to/VTK-build/Common;"
  [...]
  )

* After this commit:

[...]
set(CTKVisualizationVTKCore_LIBRARY_DIRS "/path/to/VTK-build/bin")
[...]

set(CTKVisualizationVTKWidgets_INCLUDE_DIRS
  [...]
  "/path/to/CTK-build/Libs/Core;"
  "/path/to/CTK/Libs/Visualization/VTK/Core;
  "/path/to/CTK-build/CTK-build/Libs/Visualization/VTK/Core;"
  "/path/to/VTK-build;"
  "/path/to/VTK-build/Common;"
  [...]
  )

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22451 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix EMSegment test "EMSeg_MRML_DiffReadWriteNodes"

Update EMSegment project to account for backward incompatible changes
made in r22310

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22452 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix Slicer crash on DTIVolume reload after scene is closed.

Handle the case when newVolumeDispalyNode is NULL in setMRMLVolumeNode().
Fixes #3380

From: Yuzheng Zhou <yuzheng.zhou@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22453 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix launch of Slicer-real on MacOSX adding rpath to libarchive

Fixes #3189

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22488 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: All my tests now pass and resolves #3381

From: pohl <pohl@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22489 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Easier extension build checking environment for midas_package_* vars

When doing extension experimental build, having to systematically passing
the option -DMIDAS_PACKAGE_EMAIL:STRING=<email> and
-DMIDAS_PACKAGE_API_KEY:STRING=<api_key> was tedious.

After this commit, the build system will first check if corresponding
variables are set in the environment.

On unix system, the variables could be set in the ~/.bash_aliases file
using the following syntax:

export MIDAS_PACKAGE_EMAIL=YOUR_EMAIL
export MIDAS_PACKAGE_API_KEY=YOUR_API_KEY

On windows, you could follow these instructions:
http://www.nextofwindows.com/how-to-addedit-environment-variables-in-windows-7/

From: jcfr <jcfr@3bd1e089-480b-0410-8dfb-8563597acbee>

git-svn-id: http://svn.slicer.org/Slicer4/branches/Slicer-4-3@22490 3bd1e089-480b-0410-8dfb-8563597acbee