BUG: Fix ApplyAndWait Completed CLI node status

By not observing the application logic, the cli logic was never notified
when the CLI node was completed and could not set the status accordingly.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21956 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: 3072. Observe TransformModifiedEvent in the vtkMRMLTransformableNode.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21957 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: add more keyboard shortcuts in Editor

Per request from Sonia, give shortcuts for paint, draw, wand, and
rectangle effects.

See full list here:

http://wiki.slicer.org/slicerWiki/index.php/Documentation/Nightly/Modules/Editor#Editor_Wide_Keystrokes

Also STYLE: some dead code removal and end-of-line space removal.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21958 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: 3094. Update ROI selection widget after an ROI is selected


git-svn-id: http://svn.slicer.org/Slicer4/trunk@21959 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Remove python patch step related to "dll boundaries" hack

As explained in r21863, patching pythonrun.h and pythonrun.c was
required to prevent crash (related to dll boundaries [1][2]) when
building Slicer debug against a released python.

[1] http://stackoverflow.com/questions/2322095/why-does-this-program-crash-passing-of-stdstring-between-dlls
[2] http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/57e0d522-a42c-4add-963d-c87c6e76f161

Applying the approach discussed on the Blender mailing list[3], the
hack is not required anymore. This is made possible by using
"PyRun_String" function combined with the "execfile" statement.

[3] http://lists.blender.org/pipermail/bf-python/2008-May/005253.html

When transitioning to Python3 [4], use of "exec" and "compile" could be
considered:

  with open('foo.py', 'r') as fh:
    code = compile(fh.read(), 'foo.py', 'exec'); exec(code);

[4] http://stackoverflow.com/questions/436198/what-is-an-alternative-to-execfile-in-python-3-0

Approach making use of the "imp"  module could also be investigated [5][6]

[5] http://www.ragestorm.net/blogs/?tag=execfile
[6] http://docs.python.org/2/library/imp.html

Finally, let's note that overall approach to load module could be
revised to prevent side effect as the one described in
"qSlicerScriptedFileDialog::setPythonSource"

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21960 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Remove unused files

Follow up of previous commit r21960

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21961 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Prevent confusion removing unused "weave" external project

It was initially been introduced in r14346

The files have also been added to the Slicer attic for future reference.
See https://github.com/Slicer/Attic

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21962 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Use internally consistent zlib

The zlib libraries are used by many differnt packages
includeing ITKv4, LibArchive, VTK, python, and teem.

This patchset builds a single version of zlib
that is mangled with a slicer namespace, and uses
that one library for all zlib operation through the
"USE_SYSTEM_ZLIB" options.

The mangling for vtk_zlib is disabled for teem because
it is not needed when using the External_zlib build.

From: Hans Johnson <hans-johnson@uiowa.edu>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21963 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Remove obsolete comment from External_python.cmake

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21964 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: added capability to parse multivolume data by TemporalPositionIdentifier
tag (0020,0100)


git-svn-id: http://svn.slicer.org/Slicer4/trunk@21965 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fix memory leak of vtkIntArray related to node references

Leak was exposed by commit 21957, but was originally introduced
in revision 21810.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21966 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: disable the ChangeTracker test when the module is not available

ChangeTracker is now an extension, so it won't typically be
available when tests are being run.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21967 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fixed memory leak in node references with events

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21968 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fix failing test due to leaking vtkFloatArray

It is unconditionally allocated, so should be
released unconditionally too.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21969 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Added TractographyDisplay MRMLDisplayableManager and supporting changes to make possible interactive editing of fibers.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21970 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Added TractographyDisplay MRMLDisplayableManager and supporting changes to make possible interactive editing of fibers.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21971 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fix some misc. issues with the editor identified by PNL

Thanks to Eli, Zora and all for finding these!

* 'e' key now toggles between zero and last color
* 'h' key now does not modify the Navigation mode of the crosshair
* there are now 100 undo/redo steps in the editor
* the tool palette re-docks when exiting the editor so it
will be back in place when re-entering the editor (if it had
been left undocked while editing -- space bar).

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21972 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: expose module instance and module widget python objects

With this change it's possible to directly access the module widget
of a scripted module as slicer.modules.<module>Widget (i.e. the
actual instance that is visible when the module is selected).  This
makes it possible to access internal variables for debugging or
to access widget and logic instances for self-tests or automation.

For symmetry slicer.modules.<module>Instance is also exposed,
although there is generally not anything useful in that class
instance since it is primarily declaritive.  But sometimes it can
have global helper methods, so making it available can be useful.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21973 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #3090 Support painting on transformed volumes

Take into account any parent (linear) transforms applied to the
volume when doing painting.  Unify some logic between paint
and other label effects.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21974 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #3104 allow floating point thresholds for ThresholdScalarVolume

Since everything internally is tempalted this only required
changing the data type in the xml file.

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