Related Objects
Event Timeline
Happens only on double-clicking the entry in the 'Series' table. Through 'View' button, the file is loaded only once.
The Qt call
QAbstractItemView::mouseDoubleClickEvent(QMouseEvent*)
already appears twice, leading to a call chain
cktDICOMTableView::doubleClicked
ctkDICOMTableManager::seriesDoubleClicked
QmitkDicomExternalDataWidget::OnViewButtonClicked
::SignalDicomToDataManager
QmitKDicomBrowser::OnViewButtonAddToDataManager
::AddSeriesToDataManagerEvent
causing the data to be added twice to the datamanager.
So the remaining question is: who is responsible for the 'double' call.
It is not the double click itself, for testing I just changed the event type to a single click directly in ctkDICOMTableView and the behaviour remained the same.
Does not occur in 2014.03.00, does occur in the testing installer version 3b304c (from Oct 21 ).
Currently I have no further ideas how to investigate it further, maybe the qteventloop could provide more information about the registered listener/sender and reveal the one who did register twice ( if this is the reason ).
Reseting status and returning bug to default assignee.
The connection in ctkDICOMTableView in line#128
QObject::connect(this->tblDicomDatabaseView, SIGNAL(doubleClicked(const QModelIndex&)), q, SIGNAL(doubleClicked(QModelIndex)));
is registered twice.
Changing the connection to
QObject::connect(this->tblDicomDatabaseView, SIGNAL(doubleClicked(const QModelIndex&)), q, SIGNAL(doubleClicked(QModelIndex)), Qt::UniqueConnection);
solves the problem.
I'm not sure if this is a CTK bug or if the encapsulation of CTK in MITK leads to the doubled registration.
(In reply to Nils Lichtenberg from comment #5)
The connection in ctkDICOMTableView in line#128
QObject::connect(this->tblDicomDatabaseView, SIGNAL(doubleClicked(const
QModelIndex&)), q, SIGNAL(doubleClicked(QModelIndex)));is registered twice.
Changing the connection to
QObject::connect(this->tblDicomDatabaseView, SIGNAL(doubleClicked(const
QModelIndex&)), q, SIGNAL(doubleClicked(QModelIndex)), Qt::UniqueConnection);solves the problem.
I'm not sure if this is a CTK bug or if the encapsulation of CTK in MITK
leads to the doubled registration.
It seems that all connections in ctkDICOMTableViewPrivate::setUpTableView() are registered twice.
User fetzer has pushed new remote branch:
bug-18391-duplicate-data-load-dicom-browser
[39e018]: Merge branch 'bug-18391-duplicate-data-load-dicom-browser'
Merged commits:
2015-04-16 14:57:54 Andreas Fetzer [fed0ff]
Updated CTK version to a custom release version which contains the
DICOMBrowser fix. The according branch can be downloaded from:
https://github.com/AndreasFetzer/CTK/tree/mitk-2105-03-fixes
2015-04-13 13:08:16 Andreas Fetzer [a05403]
Merge branch 'master' of mitk.org:MITK
2015-04-09 14:20:45 Andreas Fetzer [a63104]
Merge remote-tracking branch 'origin/bug-18567-2dMorphologicalOperations'
2014-12-19 13:36:19 Jonas Cordes [dec4f1]
add combo box for plane selection
2014-12-19 10:18:44 Jonas Cordes [b253c4]
add plane selection checkboxes
2014-12-19 10:18:12 Jonas Cordes [fb5839]
use the new added method
2014-12-19 10:17:39 Jonas Cordes [9482ef]
add method to create a structuring element using the current UI configuration
2014-12-19 10:16:11 Jonas Cordes [ccbecf]
code style
2014-12-19 10:15:52 Jonas Cordes [bd9b03]
use new methods and enum entries
2014-12-19 10:12:43 Jonas Cordes [57ce9a]
add new entries to StructuringElementTypes enum, add method for s. element creation
+ Ball = 7,
+ Ball_Axial = 1,
+ Ball_Sagital = 2,
+ Ball_Coronal = 4,
+ Cross = 56,
+ Cross_Axial = 8,
+ Cross_Sagital = 16,
+ Cross_Coronal = 32