1. 10 Jan, 2013 40 commits
    • finetjul's avatar
      BUG: Fix qMRMLTreeView memory leak · 232ece74
      finetjul authored
      vtkCollectionIterator and vtkCollection had still a reference count of 1
      at exit.
      Regression from r21523
      
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@21588 3bd1e089-480b-0410-8dfb-8563597acbee
      232ece74
    • finetjul's avatar
      ENH: Speed-up qMRMLSceneModel node observation · cf8212ba
      finetjul authored
      Don't listen to nodes that are filtered out by the sort&filter proxy model.
      Issue #2642
      
      Example of performance on MacBookPro laptop:
      AddData (BrainAtlas2012.mrb) took 22741 msecs -10000msecs
      CloseScene () took 11827 msecs  -10000msecs
      AddData (BrainAtlas2012.mrb) took 20909 msecs
      ModifyNode (vtkMRMLScalarVolumeNode1) took 4 msecs
      ModifyNode (vtkMRMLScalarVolumeNode2) took 24 msecs
      ModifyNode (vtkMRMLScalarVolumeDisplayNode2) took 22 msecs
      ModifyNode (vtkMRMLScalarVolumeNode3) took 15 msecs
      ModifyNode (vtkMRMLModelHierarchyNode2) took 10 msecs
      ModifyNode (vtkMRMLModelNode4) took 0 msecs
      ModifyNode (vtkMRMLModelDisplayNode5) took 11 msecs
      ModifyNode (vtkMRMLModelHierarchyNode3) took 10 msecs
      ModifyNode (vtkMRMLModelStorageNode1) took 0 msecs
      AddNode (vtkMRMLModelNode302) took 20 msecs
      Layout (3) took 51 msecs
      Layout (2) took 24 msecs
      RestoreSceneView (vtkMRMLSceneViewNode15) took 865 msecs  -1000msecs
      RestoreSceneView (vtkMRMLSceneViewNode15) took 622 msecs
      
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@21586 3bd1e089-480b-0410-8dfb-8563597acbee
      cf8212ba
  2. 31 Dec, 2012 40 commits
  3. 24 Dec, 2012 40 commits
  4. 20 Dec, 2012 40 commits
  5. 30 Sep, 2012 40 commits
  6. 21 Sep, 2012 40 commits
  7. 26 Jun, 2012 40 commits
  8. 13 Jun, 2012 40 commits
  9. 30 Apr, 2012 40 commits
  10. 25 Feb, 2012 40 commits
  11. 01 Feb, 2012 40 commits
  12. 31 Jan, 2012 40 commits
  13. 20 Jan, 2012 40 commits
  14. 09 Jan, 2012 40 commits
  15. 26 Dec, 2011 40 commits
  16. 24 Dec, 2011 40 commits
  17. 13 Dec, 2011 40 commits
  18. 08 Dec, 2011 40 commits
    • finetjul's avatar
      ENH: Add generic way to handle batch node insertion/removal in vtkMRMLScene · 7b1390b1
      finetjul authored
      vtkMRMLScene has now a notion of state. If the scene is loading a mrml scene file, its state is ImportState( ::BatchProcessState
      
      The previous scene behavior has been kept (pseudo backward compatible), the scene still fires the same (renamed) events for each Close, Import and Restore calls.
      Events have been renamed:
       SceneAboutToBeClosedEvent -> StartCloseEvent
       SceneClosedEvent -> EndCloseEvent
       SceneAboutToBeImportedEvent -> StartImportEvent
       SceneImportedEvent -> EndImportEvent
       SceneAboutToBeRestoredEvent -> StartRestoreEvent
       SceneRestoredEvent -> EndRestoreEvent
      
      New events are added:
       - StartBatchProcessEvent: notably (but not only) fired when StartCloseEvent, StartImportEvent, and StartRestoredEvent are fired
       - EndBatchProcessEvent: notably (but not only) fired when EndCloseEvent, EndImportEvent, and EndRestoredEvent are fired
       - ProgressBatchProcessEvent, ProgressCloseEvent, ProgressImportEvent, ProgressRestoreEvent: not yet fired
       - StartSaveEvent: fired when the scene starts to be saved
       - EndSaveEvent: fired when the scene finished to be saved
      
      StartState(vtkMRMLScene::StateType) and EndState(vtkMRMLScene::StateType) control the scene state. Nested states are supported, but each state events are fired only once (e.g. two successive call to StartState(BatchProcessState) fire StartBatchProcessEvent only once).
      Internally, the methods Clear(), Connect(), Import() and Commit() set the scene states.
      In addition, the state can be set externally by any node (e.g. vtkMRMLSceneViewNode) or logic (e.g. vtkMRMLColorLogic)
      
      Preliminary work has been started to fire progress events, but it hasn't been completed (needs to be implemented in AddNode(), RemoveNode(), Import() and Close()).
      
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@18878 3bd1e089-480b-0410-8dfb-8563597acbee
      7b1390b1
  19. 06 Dec, 2011 40 commits
  20. 15 Nov, 2011 40 commits
  21. 21 Sep, 2011 40 commits
  22. 15 Sep, 2011 40 commits
  23. 01 Sep, 2011 40 commits
  24. 18 Aug, 2011 40 commits
  25. 10 Aug, 2011 40 commits
  26. 04 Aug, 2011 40 commits
  27. 29 Jul, 2011 40 commits
  28. 26 Jul, 2011 40 commits
  29. 22 Jul, 2011 40 commits
  30. 26 Jun, 2011 40 commits
  31. 23 Jun, 2011 40 commits
  32. 22 Jun, 2011 40 commits
  33. 17 Jun, 2011 40 commits
  34. 12 Jun, 2011 40 commits
  35. 10 Jun, 2011 40 commits