COMP: Fix build error related to missing 'ctkTest.h'

$ git shortlog fdc47ec..cd344ef --no-merges
Jean-Christophe Fillion-Robin (1):
      Fix export of CTKTesting in CTKConfig

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23195 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Ensure any Nth reference can be set to 0

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23196 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: use Slicer system fonts in Scene Views

To bring the Scene Views module into alignment with
the Slicer system fonts, propagate the application
settings fonts to the QWebView used to display the
scene views.

Issue #1299



git-svn-id: http://svn.slicer.org/Slicer4/trunk@23197 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: #1696 LabelStatics regenerates plot on each SetParameter call

Added calls to StartModify()/EndModify() to limit the regeneration
of the plot until after the node is fully populated.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23198 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Use a delegate to control extension icon

Change how we manage icons in the extension manager to always set a
'normal' icon on the list item, and to use a delegate to override
whether the item is drawn 'disabled'. This allows us to set an
unchanging icon on the item, and take advantage of the normal drawing
code to draw a disabled icon when appropriate, rather than having to
reset the icon. Right now there is no visible change, but this will
simplify things significantly when we start using 'real' extension icons
rather than the default icon.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23199 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add icon URL to extension metadata

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23200 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Load extension icon from disk

Change extension manager to attempt to load the icon for the extension
from disk, given the URL (which serves to provide a reasonable file
type, hopefully). For now this assumes that the icon already exists;
next, we'll want to try to download it if not.

Note that, rather than using the icon image directly, we render it as a
rounded rectangle in order to apply some rounding to the icon's corners,
for consistency with the web view which does something similar.

Issue #1907

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23201 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Implement downloading of extension icons

Change qSlicerExtensionsManageWidget to attempt to download icons for
extensions that don't already have an icon on disk. On successful
download, the icon is saved and applied to the extension list item.

Note that we will retry downloads for missing icons on first showing of
the extension manager. This seems like reasonable behavior. Missing
icons fall back to the default icon as before, and download errors are
silent.

Issue #1907

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23202 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Remove extension icon on uninstall

Tweak the extension uninstall logic to also find and remove the
extension icon, if any.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23203 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Always use same size for extension icon

Change how we generate extension icons to first resize the raw icon to
the list icon size (and then adjust the rounding radius accordingly).
While not strictly necessary for "normal" sized (128x128) icons, doing
the resize up front saves doing it on each paint, and also gives a more
consistent result for icons of other than the "normal" size. (In
particular, it fixes the text being misaligned in case of smaller icons,
which previously would not be upscaled.)

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23204 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Remove qMRMLSliderWidget MinimumValue and MaximumValue by default

Closes #3661

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23205 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix unit scaling change

A scale of 0 could be generated when changing from one scale to another
(e.g. 0.1 to 1.)

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23206 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Apply units to Transforms module

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23207 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Automatically select the correct unit singlestep

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23208 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Generate tarball of SlicerWizard doc

Create a new build target to generate a tarball of the SlicerWizard
documentation. This is meant to be used similar to the existing Doxygen
tarball, to be scp'd or otherwise transferred from a build machine to
another machine which will serve the pages publicly.

Issue #3601

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23209 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Refactor documentation targets

Replace generate_userdoc.cmake script with direct build commands,
separating creation of the doc and creation of the tarball thereof into
separate targets, for consistency with how the SlicerWizard doc build
rules are set up. Also modify the latter to explicitly remove the old
tarball first for consistency with (the historic and retained behavior
of) the former.

The old rules depended on the output index.html, which would cause them
to do nothing once the doc had been created (ever). The new rules, like
the rules for the SlicerWizard doc, have no dependencies and so the doc
is always regenerated when the target is traversed. As doxygen
unfortunately does not implement its own dependency tracking (sphinx
does), this is very inefficient, but more correct, which is more
important for this case.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23210 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix cpp documentation names

The C++ documentation covers all of Slicer, not just Base. Therefore,
fix the tarball name and target names (the latter of which have been
"wrong" since a while back).

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23211 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Install extension dependencies

When installing an extension, also query the extension's internal
description file for its list of dependencies, and prompt to install
them as well.

Issue #2912

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23212 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fix crash when scene view added without screen shot

When saving a scene with the Scene Views module open, a null
pointer crash happened because the qSlicerSceneWriter was adding
the scene view node to the scene before capturing and setting
the screen shot. The mrml application logic does the same thing.
For now, avoid the crash by checking the pointer. The
thumbnail immage will appear on the next update, but since the
mrml scene isn't invoking an event when it's finished the
Commit call, the module will have to in future observe scene view
nodes for modified events to detect that a screen shot has been
added to the node (and if there have been other updates directly
to the node rather than via the GUI).

Issue #1299



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