BUG: Disable ExtensionWizard to avoid crash on Windows

Time the runtime crash happening on Windows is resolved. The module
is disabled.

Details about the crash are reported here:

 http://slicer-devel.65872.n3.nabble.com/Fwd-ctk-build-error-in-slicer-tt4031747.html

To avoid the crash in existing build tree, the following two files
will have to be removed from the build tree:

 lib/Slicer-4.3/qt-scripted-modules/ExtensionWizard.py
 lib/Slicer-4.3/qt-scripted-modules/ExtensionWizard.pyc

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23297 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Ensure Slicer ITKFactory plugins are loaded

After the update of CTK in r23256, the instantiation of the ctkErrorLogModel
was done before calling qSlicerCoreApplication::init(). This commit moves
the instantiation after the call to init() where the ITK_AUTOLOAD_PATH
was set. This will ensure the dynamic factories are discovered and loaded.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23298 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Avoid unneeded copy of resource bytes

Modify qSlicerCoreApplication::[un]registerResource to use the
QByteArray's constData() rather than mutable data() in order to avoid an
unnecessary detach of the internally shared data. (Our usage does not
require a mutable pointer at any time.)

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23299 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix qrcc.py operation on Windows

Change qrcc.py to use a temporary file to receive the raw binary rcc
data on Windows, in order to work around what appears to be a bug in rcc
where it is performing line ending (LF -> CRLF) conversion when writing
to stdout, resulting in corrupt data which causes Qt to crash when
trying to load the resources.

See also https://bugreports.qt-project.org/browse/QTBUG-39422, r23297.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23300 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Reenable Extension Wizard module

The previous commit should resolve the issue that was causing the
Extension Wizard module to crash Slicer; therefore, revert r23297,
making it enabled again.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23301 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix (another) bug reading settings list

Write a helper function to read a QSettings value explicitly as a list
in Python, in order to work around PythonQt's implicit conversion of
QVariant. Use this everywhere it is applicable in the Extension Wizard
module. This allows us to simplify some places where we iterate over
settings lists, and (more importantly) fixes (another) bug where we try
to iterate over a list that might be empty.

See also r23285.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23302 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Don't nuke external settings changes

Update CTK to include recently added ctkSettingsDialog::reloadSettings
method. Use this to force a reload of settings prior to showing the
settings dialog. This is required in order for the dialog to show
changes that have been made externally (e.g. by installing extensions)
and, more importantly, to avoid overwriting the same when closing (even
canceling!) the dialog.

Issue #3658

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23303 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Update OpenIGTLinkIF Git Tag. Fixes #3724

Transforms don't update after loading from saved scene.

From: Junichi Tokuda <tokuda@bwh.harvard.edu>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23304 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add Multi-sampling option

This commits leverage the functionality already added in CTK [1] by
adding "Views" settings panel allowing to enable/disable
anti-aliasing.

[1] https://github.com/commontk/CTK/commit/b39d95edd9be0965a85bcd9fbc12bb64edb9041a

From: Eric Larson <larson.eric.d@gmail.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23305 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: N4ITKBiasFieldCorrection: Restore original default for iteration number.

This commit reverts the change added as part r21845 to resolve issue #3034

To be compatible with code expecting the original default value, the value
is changed back to to "50,40,30".

From: Andrey Fedorov <fedorov@bwh.harvard.edu>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23306 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Editor: paint using pixel mode if brush size is too small

For volumes with anisotropic spacing the minimum brush size in the paint
tool may be smaller than the pixel size. When a the brush size is smaller
than the pixel size then no pixels are filled when the user clicks on the
image, which is very confusing for the user.

Implemented solution: added a check in the PaintEffect tool so that if
the brush size is too small then pixels are painted using paintPixel mode.

From: Andras Lasso <lasso@queensu.ca>

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

This commit extends "CheckNthNodeReferenceID()" function by introducing
the extra parameter named "referencingNodeAddedToScene" and refactor the
test to use it.

Issue #3708

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

This commit refactors the function "CheckNthNodeReferenceID"
to take an extra parameter named "expectedNodeReferenceID". This allows
the function to test the reference ID independently of the node reference
instance.

It also update the test to use convenience function where possible.

Issue #3708

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23309 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: N4ITKBiasFieldCorrection: Fix test updating the baseline

This commit updates the baseline to match the default parameter value
updated in r23306.

From: Andrey Fedorov <fedorov@bwh.harvard.edu>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23310 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Make Python resources depend on qrcc.py

Tweak the build rules for Python resource scripts to depend on the
qrcc.py script that generates them. This should ensure that they are
regenerated if the generation script changes. (In particular, it is
hoped that this will help squash lingering issues in various folks'
builds re: r23300.)

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23311 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Extend vtkMRMLNodeCallback API adding PrintSelf/GetReceivedEvents

This commit add the GetReceivedEvents and PrintSelf functions.
PrintSelf function displays the list of observed event that have been
invoked. This will be used in tests to display more information in case
the expected event count is different from the actual one.

Issue #3708

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23312 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add TestClearScene to vtkMRMLNodeTest1

This commit extends the test to check that the event invoked by
either a referencing or referenced node when clearing a scene are the expected
ones.

Issue #3708

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23313 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Update EMSegment to fix narrowing and non virtual dtor warnings.

Issue #3419

------------------------------------------------------------------------
r17052 | jcfr | 2014-06-06 21:29:01 -0400 (Fri, 06 Jun 2014) | 3 lines

COMP: Avoid implicit narrowing casts

Explicitly cast initializers in {} array initializer where the assigned
type is smaller than the value type. This avoids implicit narrowing in a
{} initializer, which is ill-formed in C++11.

------------------------------------------------------------------------
r17051 | jcfr | 2014-06-06 21:21:39 -0400 (Fri, 06 Jun 2014) | 3 lines

COMP: Remove gratuitous virtual

Remove 'virtual' specifier of private class in source file, where said
class is not and (due to being in a source file) never will be derived.
This avoids needing an explicit (virtual) dtor in order to avo
id a -Wnon-virtual-dtor warning.

From: Matthew Woehlke <matthew.woehlke@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23314 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Persist 'dont show message' selection when deleting markups

This fix addresses Mantis item #3663. The ctkMessageBox expects a
ButtonRole of AcceptRole. Created a custom button for 2 reasons.
First, it allows us to set the correct role and secondly a "Delete"
and "Delete All" button more clearly aligns with the action being
performed.

From: David Stoup <david.stoup@kitware.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23315 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix overloaded virtual warnings with VTKv6

Explicitly use base class implementations of transform overloads
operating on 'float' (which cast and call the double overloads, and so
will call the appropriate derived code) in order to avoid hiding the
overloads in the derived class. (Fixes -Woverloaded-virtual warnings.)

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