BUG: Patient browser menu list did not scale font size. Ticket #2081
ENH: Improve readability of RelatedStudiesWidget by scaling font size as it is done in PatientBrowserMenu. Ticket #2082
ENH: Decide the initial scalar type and number of components based on DICOM tags, without reading the first image. This improves load performance (the first image is no longer read at least twice) at the expense of a possible increased memory usage in some cases (e.g. if a short scalar type is chosen but a char would have sufficed). This solves part of ticket #2091.
BUG: When multiple volumes were generated from a series, the thumbnail of the first volume was not generated. #2088
ENH: Add two patches for DCMTK to enable floating point representations. The first patch adds the floating point internal representation and adds a flag to use it. The second patch chooses the floating point representation automatically when an image has a rescale slope in the range (-1, +1).
ENH: Add support for the DCMTK floating point representation to VtkDcmtkImageReader. This solves ticket #2092.
ENH: Add a flag to VtkDcmtkImageReader to use a float scalar type when reading by setting the corresponding DCMTK flag. This flag is false by default but is set to true when a multiframe file has a frame with a rescale slope in the range (-1, +1), so that in that case we can start using the float scalar type right from the beginning. This improves read performance in cases where the float type is only really needed in the later frames of a multiframe file, because with this change the read won't start with an integer type to be restarted later with the float type.
BUG: Add an additional restriction to the ImageOrientationSyncAction that checks that the images in both viewers are either single slice images or true volumes, i.e. that all images are in the same anatomicalplane. This avoid propagating the orientation in "volumes" that are a just a collection of images in different anatomical planes. This commit fixes ticket #2090.
ENH: Improve performance when checking if all the images in a volume are in the same anatomical plane: now the result is computed the first time and cached for subsequent requests.
BUG: Avoid crash when applying this hanging protocol if one of the volumes is dynamic and the acquisition plane is not AXIAL. Although it solves ticket #2093, hanging protocol manager should be improved to better choose the right volume.
ENH: Move logic of finding a hanging protocol by identifier to LayoutManager.
ENH: The method setBestHangingProtocol now returns the hanging protocol applied or NULL if no hanging protocol was applied.
ENH: Add two methods to apply the next and previous hanging protocol of the list of hanging protocols candidates.
ENH: Add shortcuts to apply either next or previous hanging protocol of the list of the current hanging protocol applied.
BUG: In the second patch in 2edf328 it was wrongly assumed that rescale slope always had a valid value, however we need to check that rescaling is used before using the value of rescale slope. This change avoids using a float scalar type when rescale is not defined, fixing two issues: 1. Float was used in cases where a smaller integer type could be used, therefore wasting memory. 2. DicomImage with a float internal type can't be rendered, and therefore thumbnails can't be created when float is chosen. This change avoids using float when it's not needed, which is most cases, so most thumbnails can be created. However in case of a single frame image with a rescale in the range (-1, 1), float will still be chosen and thumbnails will fail. This problem shall be fixed in the future.
BUG: Revert "﻿ENH: DX and RF hanging protocols are no longer needed". This reverts commit 4c8d1c26e615ab195d6e76987b4270bcccba6423 and fixes ticket #2094.
BUG: Disable cursor 3D by enabling the slicing tool when manual synchronization is enabled on any viewer. This workaround fixes ticket #2089.
BUG: The origin should be obtained from the first frame of the list if it is not empty.
ENH: Use the selectDefaultPreset() method instead of custom code to select the default window level in initialization.
ENH: Use the automatic window level as the default preset for PET volumes instead of the first file-defined preset, which is the default for other modalities.