View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003792||Slicer4||Module DICOM||public||2014-08-04 09:09||2018-03-02 11:06|
|Product Version||Slicer 4.3.1-2|
|Target Version||Slicer 4.5.0-1||Fixed in Version||Slicer 4.5.0-1|
|Summary||0003792: unable to remove one series of an exam in the dicom menu|
I use the latest nightly version. I'd like to be able to delete one serie of an exam. If I right click on this serie, I cannot select ‘delete’. If I select the serie and click on remove in the top menu, the whole patient is removed. So there is no option to remove just one series. This issue is not present in the stable version.
|Tags||No tags attached.|
Alireza, can you look into fixing this. It does sound like a regression related to the new browser layout.
If it's not easy to fix at the browser level, it might make sense to add a button that gets enabled when there is a valid selection that says something like "Delete Selected Series".
Nicole, Alireza will add some notes here based on our earlier discussion with Steve on how to address this. He is leaving for vacation/grad school today, and unfortunately we were not able to intesect with you to discuss this issue in detail.
The remove button triggers deleting all selected series, studies and patients and that causes problems depending on where you've clicked and what got selected in addition to your click select.
Was the consensus to go with a right click menu or to add more options to the Remove button? Or both? It sounds like (from bug 3519) that the right click menu used to appear but with Delete disabled, right now on my Mac I don't get anything from a right click on a series (or study or patient).
yes, I think enabling remove button is the natural thing to do
I mean, enabling "remove" context menu
Sounds good, I'll continue that way and leave the remove button alone (will add some more tool tip hints though)
A stand alone test of the CTK DICOM Browser shows that a right click on the series table is detected, but when started from Slicer, it is not.
First pass at the CTK changes is here:
Still debugging from the Slicer side, and doing futher testing on the CTK changes.
When I instantiate my updated CTK dicom browser via the python console:
the right click works.
dicomWidget = slicer.modules.DICOMWidget
I can add connections inside the DICOM widget via python and those slots get triggered by the manual call, but it seems like the right click isn't getting through to the series table.
Digging more into the QSplitter as it's used to reorder the table widgets.
The code in DICOMWidgets.py for the class DICOMDetailsPopup create makes a new QWidget window and moves elements from the CTK browser into it. It moves the seriesTableView which doesn't respond to right click events. If I move the seriesTable into the new window, right clicks work again. Taking just the view left the table label, working on how to remove that from the Slicer version.
Got the changes localised to CTK, setting up the signals on the table view rather than the table. No changes required to Slicer, CTK pull request is here:
Updated pull request branch with more description about the elements to be removed:
Integrated in r24554
Import 2017-06-07 23:51:09: master 97118990
2015-09-16 11:47:06Details Diff
|ENH: Update CTK (includes PythonQt crash fix, DICOM browser enhancement)
Fixes Issue 0004045 (py_StandaloneEditorWidgetTest crashes on exit in PythonQt)
Fixes Issue 0003792 (unable to remove one series of an exam in the dicom menu)
Author: Max Smolens <email@example.com>
Date: Tue Sep 15 15:45:30 2015 -0400
Fix PythonQtSignalReceiver crash during cleanup
This commit fixes a crash during PythonQt::cleanup(). While destroying the
PythonQtPrivate instance, any remaining PythonQtSignalReceivers that are kept
alive only by their parent object will be destroyed. The crash occurs when
PythonQtSignalReceiver's destructor calls back into
PythonQtPrivate::removeSignalEmitter() when the PythonQtPrivate instance is
Includes test case that crashes without the fix.
Author: Nicole Aucoin <firstname.lastname@example.org>
Date: Mon Aug 3 18:51:07 2015 -0400
ENH: add ability to delete individual series, studies, patients
Add to the browser Remove button the information that it will
delete all selected series, studies, patients.
Add support for right click custom context menus in the
patient, study, series tables. Translate the local points
to global ones in terms of the table view and signal
right clicked with the global position so that the browser
can position the context menu appropriately.
Add the context menu to the DICOM browser to allow
deleting at just one level, with number of items
selected information, and a confirmation message box with descriptive
information that can be set to not be shown again.
Added a test for the DICOM browser, with the ability
to open it in interactive mode to test the right clicks.
Add query wrappers for the DICOM database to get the patient name
as well as descriptions for series and study. They will return empty
strings on failure.
Use the new queries to give more meaningful information on the right
click pop up menu in the DICOM browser.
Added a test for the new DICOM database accessors.
When Slicer makes a custom DICOM browser, it moves the table views
directly into the new window, extracting them from the DICOM
With this change, the table view takes care of mapping the point to
global, the table manager propagates the signal as a table specific
XRightClicked signal, and the browser responds to it with a table
specific context menu.
Slicer Issue 0003792
From: Max Smolens <email@example.com>
git-svn-id: http://svn.slicer.org/Slicer4/trunk@24554 3bd1e089-480b-0410-8dfb-8563597acbee
|mod - SuperBuild/External_CTK.cmake||Diff File|
|2014-08-04 09:09||Thiele||New Issue|
|2014-08-04 09:12||fedorov||Category||Core: GUI => Module DICOM|
|2014-08-14 18:15||fedorov||Status||new => assigned|
|2014-08-14 18:15||fedorov||Assigned To||=> pieper|
|2014-08-15 05:21||pieper||Note Added: 0012374|
|2014-08-27 07:55||mehrtash||Assigned To||pieper => mehrtash|
|2015-05-22 10:45||mehrtash||Relationship added||related to 0003519|
|2015-05-22 11:13||mehrtash||Relationship added||related to 0003769|
|2015-07-24 12:07||fedorov||Assigned To||mehrtash => nicole|
|2015-07-24 12:08||fedorov||Note Added: 0013191|
|2015-07-29 08:32||nicole||Note Added: 0013197|
|2015-07-29 08:47||fedorov||Note Added: 0013198|
|2015-07-29 08:48||fedorov||Note Added: 0013199|
|2015-07-29 08:51||nicole||Note Added: 0013200|
|2015-08-03 15:32||nicole||Note Added: 0013210|
|2015-08-11 10:41||nicole||Note Added: 0013233|
|2015-08-13 15:10||nicole||Note Added: 0013241|
|2015-08-14 13:18||nicole||Note Added: 0013242|
|2015-08-25 14:28||nicole||Note Added: 0013246|
|2015-09-15 09:46||nicole||Note Added: 0013272|
|2015-09-16 09:43||jcfr||Note Added: 0013278|
|2015-09-16 09:43||jcfr||Status||assigned => resolved|
|2015-09-16 09:43||jcfr||Fixed in Version||=> Slicer 4.5.0-1|
|2015-09-16 09:43||jcfr||Resolution||open => fixed|
|2015-09-16 09:43||jcfr||Target Version||=> Slicer 4.5.0-1|
|2017-06-10 08:51||msmolens||Changeset attached||=> Slicer master 97118990|
|2018-03-02 11:06||jcfr||Status||resolved => closed|