ENH: Add qMRMLSortFilterProxyModel::visibleNodeIDs

Closes #2907

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21920 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add qMRMLNodeComboBox::NoneDisplay

Closes #2908

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21921 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Observe scene after being populated

If a node is added into the scene while it is being populated
(updateScene() calls populateScene()), the added node might be added in
the wrong location and it might trigger modified event which confuse
the model.
Such added node can happen if a qMRMLNodeComboBox does not accept "None",
so it selects the first valid node as soon as it is added into the model
(by populateScene), selecting that node could trigger a node addition into
the scene (if someone observe the currentNodeChanged signal of the combobox).

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21922 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkMRMLApplicationLogic::InvokeEventWithDelay()

This allows an event to be fired with a slight delay.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21923 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkMRMLCommandLineModuleNode::SetParameterAsNode

Convenient function that will be useful when observing parameter nodes.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21924 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkMRMLCommandLineModuleNode::Cancelling

There was no difference between a requested cancel and the module being
cancelled.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21925 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Add comments to CLI node/logic/widget

Rename "Default" pushbutton into "Restore Defaults"

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21926 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Move CLI progress bar above Cancel/Apply buttons

It makes more sense to have all the CLI module controls to be grouped
together.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21927 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkMRMLCommandLineModuleNode::SetAutoRun()

It gives the ability to automatically run a CLI when input parameters
changed.
Closes #2940

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21928 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkMRMLCommandLineModuleNode::Cancel() to cancel from python

Use int as return type for GetStatus() because python can't get enum types.
Use Cancel() to request a cancelling.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21929 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add support for AnyEvent observation in vtkEventBroker

The event ID was not propagated when observing any event.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21930 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Split AutoRun into AutoRun&AutoRunMode, add AutoRunOnOtherInputEvents

To limit confusion, split the AutoRun options from the AutoRun state (On/Off).
Add AutoRunOnOtherInputEvents to observe events other than ModifiedEvent.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21931 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Make qMRMLLabelComboBox::setMRMLColorNode a no-op if same node

is being set.
This prevents un-necessary cascade of events being triggered.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21932 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Fix CLI progress bar setup

The progress bar was only initialized on setDefaultValue when it should be
initialized everytime a new command line module node is selected.

See Issue #2988

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21933 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add VisibleAfterExecution option for CLI Progress bar

This option defines if the progress bard stay visible at the end of the
execution of the CLI or not.

See Issue #2988

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21934 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: Align CLI Progress bar "Status:" label to the right

It is better for the "Status:" label to be closer to the current status.
Otherwise the user just glances over it without really noticing the
relation between both.

See Issue #2988

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21935 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Expose qSlicerIOManager::openDialog to python

Issue #2991

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21936 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Color/Opacity transfer functions must be "sharp" for labelmaps

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21937 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Discard AutoRun calls with obsolete mtime requests

git-svn-id: http://svn.slicer.org/Slicer4/trunk@21938 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Add vtkMRMLCommandLineModuleNode::Completing

* Add vtkMRMLCommandLineModuleNode::Completing: state before the outputs
are loaded into the scene
* Add vtkMRMLCommandLineModuleNode::StatusModifiedEvent: event invoked when
status is changed.
* Remove unused wait_for_module(module, time_pause=5): should use the
Completing/Completed mechanism instead.

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