1. 29 Jan, 2019 4 commits
  2. 20 Nov, 2018 1 commit
  3. 08 Jun, 2018 3 commits
  4. 21 Mar, 2018 2 commits
  5. 14 Feb, 2018 6 commits
  6. 13 Feb, 2018 10 commits
    • jcfr's avatar
      COMP: Update ITKv4 to fix GCC7 build error on Ubuntu 17.04 with Qt4 · a23ea558
      jcfr authored
      List of changes:
      $ git shortlog 5399b3e..7d9c57a --no-merges
      Jean-Christophe Fillion-Robin (1):
            COMP: Set policy CMP0067 to ensure try_compile honor CMAKE_CXX_STANDARD
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26922 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      BUG: Update CTK to support depth peel of volumes (e.g model) with volume rendering · e47334fd
      jcfr authored
      Note that this will have an effect only for Slicer built with VTK9 and Qt5.
      List of changes:
      commit commontk/CTK@ec9622a
      Author: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
      Date:   Tue Feb 13 21:58:54 2018 -0500
          ENH: ctkVTKAbstractView: Update setUseDepthPeeling to also enable depth peel for volumes
          This commit updates the method so that it also enables depth peeling for
          volumes along with the translucent geometry. Only supported on OpenGL2
          with dual-depth peeling.
      Suggested-by: default avatarKen Martin <ken.martin@kitware.com>
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26921 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      COMP: Update DMCTK to version 3.6.3 and fix GCC 7 build error · 0f398d94
      jcfr authored
      List of changed specific to commontk/dcmtk:
      $ git shortlog DCMTK-3.6.3..88225bc --no-merges
      Jean-Christophe Fillion-Robin (1):
            cmake: Set policy CMP0067 to ensure try_compile honor CMAKE_CXX_STANDARD
      Max Smolens (1):
            Fix configure error on Linux with DCMTK_ENABLE_CXX11 enabled
      List of changes specific to 3.6.3:
      $ git shortlog 998058d..DCMTK-3.6.3 --no-merges
      Jan Schlamelcher (32):
            Clarified version information.
            Added DCMTK version suffix to Autoconf and CMake.
            Suppressed inappropriate warnings in dcmatch.cc.
            Refactored install using GNUInstallDirs CMake Module.
            Added move support for pre C++11 OFvariant.
            Refactored DcmTransportLayer and DcmTLSTransportLayer.
            Introduced DcmTLSOptions and related error conditions.
            Fixed DcmTLSOptions in case OpenSSL is not available.
            Added a missing include.
            Introduced helper macro OFrvalue_ref_upcast.
            Fixed compiling DcmTLSTransportLayer with C++11.
            Fixed a syntax error in yesterday's commit.
            Made OFrvalue_ref_upcast a bit more robust.
            Modified recently introduced OFrvalue_ref_upcast.
            Added override DcmPixelItem::calcElementLength().
            Added some '*' to @code sections in Doxygen comments.
            Enhanced the way the unit tests are executed (CMake).
            Added a workaround for CMake versions prior 3.x.x.
            Another workaround for the unit tests / CMake < 3.0.
            Fixed domain names resolving to unsupported IPv6.
            Fixed installing OpenSSL DLLs (Windows).
            Added missing configuration test to CMake.
            Added deprecation warning for configure.
            Enhanced deprecation warning for configure.
            Another fix for configure.
            Updated ANNOUNCE and INSTALL for DCMTK release 3.6.3.
            Updated Makefile dependencies.
            Minor enhancements regarding previous commit.
            Added a missing contributor to ANNOUNCE.
            Updated version information for DCMTK release 3.6.3.
            Updated man pages for DCMTK release 3.6.3.
            Created CHANGES.363 for DCMTK release 3.6.3.
      Joerg Riesmeier (52):
            Enhanced support for descriptors (TID 1600).
            Renamed method addImageEntryDescriptors().
            Added check for invalid parameter combinations.
            Further enhanced iterating an SR document tree.
            Added missing DLL specifier to new classes.
            Removed "virtual" from gotoNode() methods.
            Added support for Protocol Approval SOP Classes.
            Added comparison operators to various SR classes.
            Added another gotoNode() method to tree/cursor.
            Fixed typo in API documentation (Doxygen).
            Slightly revised data dictionary documentation.
            Updated data dictionary for DICOM 2017d.
            Updated code definitions for DICOM 2017d.
            Updated Context Group classes for DICOM 2017d.
            Move common descriptors to group level (TID 1600).
            Fixed further typos (in comments).
            Fixed MacOS X version information in INSTALL.
            Do not pass simple const parameters by reference.
            Fixed various typos in API documentation.
            Added short section on "DICOM Data Dictionary".
            Enhanced documentation of createOffsetTable().
            Avoid possible 32-bit unsigned integer overflow.
            Fixed wrong warning message on odd offset value.
            Consistently use Command Priority "MEDIUM".
            Refer to CID 7006 for Purpose of Reference Code.
            Updated code definitions for DICOM 2017e.
            Updated "dcmrt" classes based on DICOM 2017e.
            Removed double definition of retired attributes.
            Use stringstream for dynamic command line options.
            Added option --socket-timeout to echoscu.
            Avoid double definition of WIN32_LEAN_AND_MEAN.
            Fixed possibly wrong calculation of value count.
            Fixed further buffer overruns in writeXML().
            Added test case "dcmsr_gotoParentUntilRoot".
            Reuse pre-computed size of tag header.
            Fixed issue with uninitialized memory buffer.
            Fixed possible buffer overflow in print() method.
            Double-check length field in print() method.
            Fixed various typos in comments and log output.
            Fixed output to debug logger.
            Output warning for inappropriate element length.
            Enhanced robustness of getUncompressedFrameSize().
            Added a warning on unused parameter "bitmap-out".
            Added comments, e.g. on what TODO.
            Updated mapping of Body Part Examined to codes.
            Added comment on double use of Defined Term.
            Updated references to current DICOM edition.
            Added --extract-xml option to findscu.
            Added --extract-xml-single option to findscu.
            Updated latest tested CMake version.
            Removed trailing spaces.
            Fixed typo in parameter name.
      Marco Eichelberg (36):
            Enabled new TLS versions when using OpenSSL < 1.1.0.
            Fixed return type for _findfirst().
            Use getnameinfo() for reverse DNS lookups.
            Added new function OFStandard::getAddressByHostname.
            Changed file mode to 644 for some files.
            Including <ws2tcpip.h> on Windows, for IPv6 structs.
            Added typecast needed for older MSVC versions.
            Updated Makefile dependencies
            Updated autoconf test TYPE_SOCKLEN_T for MinGW.
            New configure tests for lib iphlpapi and ws2_32.
            Changes needed to compile oflog on MinGW.
            Update Makefile dependencies.
            Further changes needed for MinGW.
            Minor changes in class OFSockAddr.
            Ported code to OFStandard::getAddressByHostname().
            This commit completes the previous one.
            Minor changes needed for MSVC.
            Now including <ws2tcpip.h> on Windows.
            Fixed warning about unused variable.
            Fixed buffer overrrun in DcmOtherFloat::writeXML().
            Converted tabs to whitespace.
            Fixed problem with missing inet_ntop() on VS2015.
            Added crypt32 to OpenSSL libraries on Win32.
            Minor change to avoid warning on MSVC.
            Minor improvements in class OFSockAddr.
            Completed documentation for class OFSockAddr.
            Added explicit typecast to avoid MSVC warning.
            Added parentheses to avoid Clang warning.
            Minor changes to avoid warnings on MSVC x64.
            Added new autoconf/cmake test for <poll.h>.
            Now using poll() to handle DICOM network connections.
            Fixed NULL pointer dereference in dcmqrscp.
            Fixed bug in poll() related code.
            Fixed unused variable warning.
            Added documentation on the CA cert management options.
            Added certstor.txt to makefiles.
      Michael Onken (18):
            Fixed illegal read and memory leak.
            Removed deprecated import method.
            Fixed bug when importing Series and Frame of Ref.
            Fixed CMake tests for isnan() and isinf().
            Fixed typos.
            Removed superfluous CMake policy setting.
            Fixed listed object in GNU Makefiles.
            Option enabling Verification on base class SCP.
            Better error reporting for bad SCP configurations.
            Make sure the calling host is being checked.
            Enhanced documentation.
            Fixed documentation mixing up Windows/Unix.
            Fixed CMake warning caused by CMP0005.
            Fixed SCU/SCP test under 32 Bit Windows.
            Refactored/Fixed (Ident.) Pixel Value Transf. FG.
            Enforce macro ENABLE_EXTERNAL_DICTIONARY.
            Fixed writing of fractional segmentations.
            Allow serialization of an empty dataset.
      Sebastian Grallert (2):
            Introduced DcmElement::isUniversalMatch().
            Fixed universal matching of missing values in dcmwlm.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26920 3bd1e089-480b-0410-8dfb-8563597acbee
    • lassoan's avatar
      BUG: Use startupCompleted signal for module initialization · ecdc5505
      lassoan authored
      Singleshot timers are now processed even before the application startup is completed.
      Therefore, initialization steps that must be performed after the application startup is completed must be connected to startupCompleted signal.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26919 3bd1e089-480b-0410-8dfb-8563597acbee
    • lassoan's avatar
      ENH: Improve vtkMRMLPlotSeriesNode SetColor API · afef07f5
      lassoan authored
      Now SetColor(r,g,b) is accepted as well, not just SetColor(rgb).
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26918 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      COMP: BuildSystem: Update External_Swig.cmake to fix ninja build error · 643f2b53
      jcfr authored
      Update the install command to use variable CMAKE_MAKE_PROGRAM instead of
      the hard-coded name of the build tool.
      This commit fixes a regression introduced in r26877 (COMP: Update Swig
      external project to avoid race condition)
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26917 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      COMP: Update LibArchive to fix GCC7 build error · a53a7ded
      jcfr authored
      List of changes:
      $ git shortlog 43a14d4..ebec58f --no-merges
      Jean-Christophe Fillion-Robin (1):
            slicer: archive_pack_dev: Fix GCC7 build error including supported header
      Wei-Cheng Pan (1):
            Fix -Werror=implicit-fallthrough= for GCC 7.
      See https://discourse.slicer.org/t/3d-slicer-build-error/2082/2
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26916 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      STYLE: Ensure ExternalProjectAddSource dependent module are included · c3d83bb6
      jcfr authored
      This commit ensures that the ExternalProjectAddSource module can directly
      be included and used in custom Slicer application.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26915 3bd1e089-480b-0410-8dfb-8563597acbee
    • pieper's avatar
      COMP: fix mac/linux build errors in plot test · 497eb53b
      pieper authored
      Need to pass raw pointer to set methods not vtkNew&
      Errors of the form:
      /home/pieper/slicer4/latest/Slicer/Modules/Loadable/Plots/Widgets/Testing/Cxx/qMRMLPlotPropertiesWidgetTest1.cxx: In function ‘int qMRMLPlotPropertiesWidgetTest1(int, char**)’:
      /home/pieper/slicer4/latest/Slicer/Modules/Loadable/Plots/Widgets/Testing/Cxx/qMRMLPlotPropertiesWidgetTest1.cxx:97:38: error: no matching function for call to ‘vtkMRMLTableNode::SetAndObserveTable(vtkNew<vtkTable>&)’
      In file included from /home/pieper/slicer4/latest/Slicer/Modules/Loadable/Plots/Widgets/Testing/Cxx/qMRMLPlotPropertiesWidgetTest1.cxx:39:0:
      /home/pieper/slicer4/latest/Slicer/Libs/MRML/Core/vtkMRMLTableNode.h:84:16: note: candidate: virtual void vtkMRMLTableNode::SetAndObserveTable(vtkTable*)
         virtual void SetAndObserveTable(vtkTable* table);
      From: Steve Pieper <pieper@isomics.com>
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26914 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      COMP: Fix dashboard submission escaping charachers in CTestCustom · d339ebff
      jcfr authored
      This commit fixes a regression introduced in r26912 (STYLE: Update
      CTestCustom adding more warning suppressions)
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26913 3bd1e089-480b-0410-8dfb-8563597acbee
  7. 12 Feb, 2018 3 commits
  8. 11 Feb, 2018 1 commit
  9. 10 Feb, 2018 1 commit
  10. 09 Feb, 2018 7 commits
    • lassoan's avatar
      BUG: Minor plot fixes · 71e8c1dd
      lassoan authored
      Subject hierarchy plugin is fully functional (show/hide chart is more robust, edit chart node works). Fixed update of legend and grid visibility checbox in Plots module GUI, etc.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26907 3bd1e089-480b-0410-8dfb-8563597acbee
    • lassoan's avatar
      ENH: Added Plots module · 082edc40
      lassoan authored
      1. vtkPlot was stored in vtkPlotSeriesNode and was used in multiple charts. This caused plots to malfunction when multiple plot views were visible (for example, reset axes did not work).
      A vtkPlot cannot be used in multiple charts, as vtkPlot holds pointers to axes and charts own axes objects. Fixed it by storing only properties in vtkPlotSeriesNode (not a vtkPlot object), vtkPlot objects are created in qMRMLPlotView (based on properties stored in vtkPlotSeriesNode).
      2. Store vtkMRMLPlotChartNode properties in MRML node members access them using direct get/set methods, instead of using generic node attributes.
      This node broke away from the MRML node convention by storing properties in custom attributes. Attributes are less easy to discover, more complicated to change (need to make sure the correct attribute name is used and value is properly converted to/from string).
      3. Instead of using "Indexes" special column value, using of indexes is determined from plot type (scatter plots use values in X column, others use indexes).
      Now "Indexes" is no longer a reserved column name; it can be used freely in tables.
      4. Replaced "Custom" option in plot controller widgets by invalid selection
      5. Removed modification of MRML nodes in qMRMLPlotViewControllerWidget::updateWidgetFromMRML
      Problem: Common PlotData type, x column name, and marker style was stored in vtkMRMLPlotChartNode. However, this information may get out of sync with actual common properties in associated PlotData nodes. Consolidation of redundant information happened in qMRMLPlotViewControllerWidget::updateWidgetFromMRML, by modifying PlotData nodes. In general, MRML nodes must not be modified in updateWidgetFromMRML calls and data redundancy should be avoided.
      Solution: Do not store redundant information in PlotChart node. Common PlotData type, x column name, and marker style is determined when needed, by looking into associated PlotData nodes. When user changes a common property on the GUI, PlotData nodes are updated immediately.
      6. Created Plots module that can edit plot chart and series properties.
      Also refactored plot widgets to reusable plot series and chart properties widgets.
      7. Many other small fixes and improvements, including:
      Rename PlotData to PlotSeries to follow common naming convention.
      Added line style option (including no line).
      Added option for assigning labels to data points.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26906 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      COMP: Support configuring Slicer with custom value for CMAKE_CXX_STANDARD · 8d4dc93c
      jcfr authored
      Co-authored-by: default avatarGregory C. Sharp <gregsharp.geo@yahoo.com>
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26905 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      ENH: Add median to Segmentation statistics module · b1c492d6
      jcfr authored
      Reviewed-by: Jean-Christophe Fillion-Robin's avatarJean-Christophe Fillion-Robin <JChris.FillionR@kitware.com>
      From: Mohamed Moselhy <mohamed.moselhy@uwo.ca>
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26904 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      COMP: Fix vtkMRMLNode warnings · de68fde5
      jcfr authored
      This commit fixes the following warnings:
      * reorder warning in vtkMRMLNode and vtkMRMLAbstractViewNode constructors
      * unused "isBackgroundColor2Set" variable warning in vtkMRMLAbstractViewNode
      * unused printOutputStream and printOutputIndent in PrintSelf functions
      It also removes used of UTF-8 characters in vtkMRMLAbstractLayoutNode
      license headers.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26903 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      BUG: Improve QWebEngineView integration to fix crash on exit · c5ad446a
      jcfr authored
      This commit avoids the application from crashing while exiting
      after if any widget integrating a QWebEngineView is still instantiated
      beflore closing.
      This seems related to https://bugreports.qt.io/browse/QTBUG-50160#comment-305211
      The work-around is to explicitly delete the QWebEngineView before
      the application attempts to do it automatically while exiting.
      The fix is applied to both qSlicerWebWidget and qMRMLChartWidget.
      See issue #4479 - https://issues.slicer.org/view.php?id=4479
      Reviewed-by: Jean-Christophe Fillion-Robin's avatarJean-Christophe Fillion-Robin <JChris.FillionR@kitware.com>
      From: Johan Andruejol <johan.andruejol@kitware.com>
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26902 3bd1e089-480b-0410-8dfb-8563597acbee
    • jcfr's avatar
      BUG: Update ITKv4 to include improved fix for FloatingPointExceptions issue · 46a31885
      jcfr authored
      This commit is a follow-up of r26894 (BUG: Update ITKv4 to fix
      FloatingPointExceptions not supported error).
      Corresponding upstream topic is http://review.source.kitware.com/#/c/23158/5
      ITK commit:
          BUG: Refactor itkFloatingPointExceptions to fix macOS support
          This commit addresses an issue occurring on newer macOS where the functions
          "feenableexcept" and "fedisablexcept" are not available.
          The message "FloatingPointExceptions are not supported on this platform."
          was displayed when executing code enabling floating point exceptions. This
          happened because the logic checking the support on different platform was
          Due to the complexity of the implementation, this commit (1) breaks down
          the implementation in few files, (2) add comments and (3) differentiate the
          following cases for implementing feenableexcept and fedisableexcept functions:
          * the function should be a no-op (e.g emscripten, solaris)
          * has builtin  feenableexcept and fedisableexcept (e.g linux)
          * has builtin fegetenv and fesetenv allowing to emulate
            feenableexcept and fedisableexcept (e.g macOs)
          It also extend the API of itkFloatingPointExceptions with a new function
          "HasFloatingPointExceptionsSupport()" allowing to check if its supported
          on the current platform. This allows to simplify code in itkNrrdImageIO and
          It also generalizes the emulation of feenableexcept and fedisableexcept using
          egetenv and fesetenv so that it can works with "fenv_t" struct having
          different "control" member name. For example, on macOS it is "__control",
          on Linux with GlibC it is "__control_word", and on Alpine where musl is
          used, it is "__cw".
          Finally, it also updates the implementation of FloatingPointExceptions::Enable(),
          FloatingPointExceptions::Disable() and the signal handler on unix by removing
          the use of FPE_* flag with feenableexcept, fedisableexcept and feclearexcept.
          Indeed, FPE_* flags are values associated with the signal, They have no meaning
          in the context of fenv exceptions.
          Some useful references:
          * http://lists.lugod.org/pipermail/vox-tech/2002-March/001322.html
          * https://linux.die.net/man/3/fegetenv
      From: Jean-Christophe Fillion-Robin <jchris.fillionr@kitware.com>
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26901 3bd1e089-480b-0410-8dfb-8563597acbee
  11. 08 Feb, 2018 2 commits
    • lassoan's avatar
      ENH: Added MRML node property macros · aa2b323f
      lassoan authored
      Added macros for reading, writing, copying, and printing MRML node properties.
      Updated vtkMRMLNode, vtkMRMLAbstractViewNode and vtkMRMLCameraNode to use these macros. In the future, more nodes should be updated in a similar way.
      Why use macros instead of functions:
      - Simpler and more consistent syntax. Current simple syntax would be difficult to reproduce without using macros.
      - Greater flexibility. We can create block with local variables, use the same argument as string and a method name, etc. allowing better performance, robustness, and keeping implementation simpler.
      - Future-proofing. Without changing existing MRML nodes, we can switch to use custom templated functions, serialization library, or (in a few years) standard C++ reflection.
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26900 3bd1e089-480b-0410-8dfb-8563597acbee
    • pinter's avatar
      BUG: Fixed error handling in slice sorter DICOM util · 04a09237
      pinter authored
      git-svn-id: http://svn.slicer.org/Slicer4/trunk@26899 3bd1e089-480b-0410-8dfb-8563597acbee