COMP: Update code to work with GDCM 2.4. Only an additional parameter when calling Overlay::GetUnpackBuffer() is needed.
COMP: Update default directories for GDCM 2.4 on Windows.
BUG: It is required to call Update() before getting a vtkImageData from a filter with GetOutput(), otherwise it returns an empty vtkImageData.
BUG: Use SetInputConnection() for the main input of the vtkImageMask in the DisplayShutterFilter so that updates are propagated.
ENH: Fix some unit tests related to vtkImageData that were failing since the upgrade to VTK 6.1. The tests failed because createVolumeWithParameters() first set the dimensions and then the extent of the vtkImageData, and they are now internally tied. So, if the extent is set the dimensions are overwritten, and vice versa.
It has been solved by removing the dimensions parameter from createVolumeWithParameters() and relying solely on the extent parameter.
ENH: Fix a unit test for VolumePixelData that was failing with VTK 6.1. Now it's necessary to call AllocateScalars().
ENH: Improve performance of the unit tests for Volume and VolumePixelData, which was too slow with Qt5.
BUG: Fix a bug in VolumePixelData::setData(uchar*,...) discovered through unit testing. The number of scalar components wasn't correct because the created vtkUnsignedCharArray always had one component. Now we opt to copy the data from the original pointer to the scalar pointer of the created vtkImageData, which is both simpler and correct. The unit test has also been updated to work with the new implementation.
BUG: Use a workaround to make VolumePixelDataIterator work with an empty vtkImageData on VTK 6.1.
ENH: Finish update of VolumePixelDataIterator unit tests to the VTK 6.1 API. It was left as pending in the transition.
ENH: Fix a crash in the Q2DViewer unit tests: some of them require the vtkImageData to have allocated memory.
ENH: Update setTime() unit tests to the correct expected value. The result was wrong with Qt4.
ENH: Implement Patient::getModalites() without using a QSet so that the order is stable with any Qt version. With a QSet the order could change and indeed changed with the switch to Qt5, therefore making the unit tests hard to maintain.
ENH: Update Patient::getModalities() unit tests to match the order obtained with the new implementation.
ENH: A scoped pointer is enough for this use case.
ENH: Remove unused list from test.
ENH: Add a call to Update() to make the DrawerBitmap unit tests pass with VTK 6.1.
BUG: We rely on the QDateTime being invalid if either the date or the time is invalid. Since the implementation has changed in Qt5 and now only the date has to be valid for the QDateTime to be valid and an invalid time is internally converted to 00:00:00, now we have to change the way to fill the QDateTime:
1. We first set the time.
2. If the set time is valid, then we set the date (which will determine the validity of the QDateTime), otherwise we do nothing (ensuring that the QDateTime remains invalid).