Index: QmitkDICOMBrowserView.cpp =================================================================== --- QmitkDICOMBrowserView.cpp (revision 25204) +++ QmitkDICOMBrowserView.cpp (working copy) @@ -4,8 +4,8 @@ Module: $RCSfile$ Language: C++ Date: $Date$ -Version: $Revision: 17495 $ - +Version: $Revision: 17495 $ + Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. @@ -23,6 +23,7 @@ #include "QmitkDataStorageComboBox.h" #include "QmitkStdMultiWidget.h" #include +#include #include #include @@ -37,6 +38,21 @@ const std::string QmitkDICOMBrowserView::VIEW_ID = "org.mitk.views.dicombrowser"; +unsigned int QmitkDICOMBrowserView::ProgressAux::m_LastProgress = 0u; + +void QmitkDICOMBrowserView::ProgressAux::UpdateProgressBar(float progress) +{ + unsigned int + p = progress * 100.0f, + d = p - QmitkDICOMBrowserView::ProgressAux::m_LastProgress; + + if (d > 0u) + { + mitk::ProgressBar::GetInstance()->Progress(d); + QmitkDICOMBrowserView::ProgressAux::m_LastProgress = p; + } +} + QmitkDICOMBrowserView::QmitkDICOMBrowserView() : QmitkFunctionality(), m_Controls(NULL), m_MultiWidget(NULL) { @@ -142,8 +158,11 @@ { WaitCursorOn(); + mitk::ProgressBar::GetInstance()->AddStepsToDo(100u); + QmitkDICOMBrowserView::ProgressAux::m_LastProgress = 0u; + mitk::DicomSeriesReader::StringContainer names = mitk::DicomSeriesReader::GetSeries(dir.toStdString(), series_uid.toStdString()); - mitk::DataNode::Pointer node = mitk::DicomSeriesReader::LoadDicomSeries(names); + mitk::DataNode::Pointer node = mitk::DicomSeriesReader::LoadDicomSeries(names, QmitkDICOMBrowserView::ProgressAux::UpdateProgressBar); if (node.IsNull()) { @@ -153,6 +172,9 @@ { node->SetName(series_uid.toStdString()); this->GetDefaultDataStorage()->Add(node); + + mitk::RenderingManager::GetInstance()->InitializeViews(node->GetData()->GetTimeSlicedGeometry(), mitk::RenderingManager::REQUEST_UPDATE_ALL, true); + mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } WaitCursorOff(); Index: QmitkDICOMBrowserView.h =================================================================== --- QmitkDICOMBrowserView.h (revision 25204) +++ QmitkDICOMBrowserView.h (working copy) @@ -4,8 +4,8 @@ Module: $RCSfile$ Language: C++ Date: $Date$ -Version: $Revision: 17495 $ - +Version: $Revision: 17495 $ + Copyright (c) German Cancer Research Center, Division of Medical and Biological Informatics. All rights reserved. See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. @@ -73,6 +73,14 @@ QmitkStdMultiWidget* m_MultiWidget; Poco::Path m_DBPath, m_TempDBPath; + class ProgressAux + { + public: + static unsigned int m_LastProgress; + + static void UpdateProgressBar(float p); + }; + void ConnectDB(QFile &file) const; typedef itk::DICOMImageIO2 DcmIoType;