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: 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