]> Creatis software - clitk.git/blobdiff - vv/vvQDicomSeriesSelector.cxx
Merge branch 'master' into ITKv5
[clitk.git] / vv / vvQDicomSeriesSelector.cxx
index 51f11a886cf7227b63af99d1a6b119aaec6287f2..9c279827128062caf963b9207ff8d247ced02664 100644 (file)
@@ -58,6 +58,8 @@ vvDicomSeriesSelector::vvDicomSeriesSelector(QWidget* parent)
           this, SLOT(itemSelectionChanged()));
   connect(ui.mDicomDetailsListWidget, SIGNAL(itemSelectionChanged()),
           this, SLOT(itemDetailsSelectionChanged()));
+  connect(ui.mIsMatrixCheckBox, SIGNAL(stateChanged(int)),
+          this, SLOT(itemMatrixSelectionChanged(int)));
 
   // Initialization
   /*   if (config::get_current_path() != QString(0))
@@ -67,6 +69,8 @@ vvDicomSeriesSelector::vvDicomSeriesSelector(QWidget* parent)
 
   mPreviousPath = mFoldername;
   ui.mFolderLineEdit->setText(mFoldername);
+  ui.mIsMatrixCheckBox->setChecked(0);
+  mPatientCoordinateSystem = false;
   //  ui.mTableWidget->setRowCount(0);
 }
 //====================================================================
@@ -94,8 +98,12 @@ void vvDicomSeriesSelector::close()
 void vvDicomSeriesSelector::BrowseButtonRelease()
 {
   QFileDialog dialog(this);
+  QStringList filters;
+  filters << "DICOM files (*.dcm)"
+          << "All files (*)";
   dialog.setFileMode(QFileDialog::AnyFile);
-  dialog.setFilter("DICOM files (*.dcm); All files (*)");
+  dialog.setNameFilters(filters);
+  //dialog.setFilter(tr("DICOM files (*.dcm); All files (*)"));
   mFoldername = dialog.getExistingDirectory(this,
                 "Select a folder to find DICOM image",
                 mPreviousPath);
@@ -225,10 +233,10 @@ void vvDicomSeriesSelector::itemDetailsSelectionChanged()
   if (i<mFilenames->size()) {
     if (mDicomDetails[(*mFilenames)[i]] == "") {
       std::ostringstream s;
-      mDicomHeader[mCurrentSerie].GetFile().Print(s);
-
       QString l;
+
 #if GDCM_MAJOR_VERSION == 2
+      mDicomHeader[mCurrentSerie].GetFile().Print(s);
       const gdcm::File& header = mDicomHeader[mCurrentSerie].GetFile();
       gdcm::StringFilter sf;
       sf.SetFile( header );
@@ -255,6 +263,7 @@ void vvDicomSeriesSelector::itemDetailsSelectionChanged()
           }
         }
 #else
+      mDicomHeader[mCurrentSerie]->Print(s);
       gdcm::File * header = mDicomHeader[mCurrentSerie];
       gdcm::DocEntry * e = header->GetFirstEntry();
       while (e) {
@@ -355,7 +364,7 @@ QString vvDicomSeriesSelector::AddInfo(const gdcm::File *header, QString n, uint
   std::string s = sf.ToString( t );
   return AddInfo(n.toStdString(), s);
 #else
-  return AddInfo(n.toStdString(), header->GetEntryValue(group, elem));
+  return AddInfo(n.toStdString(), const_cast<gdcm::File*>(header)->GetEntryValue(group, elem));
 #endif
 }
 //====================================================================
@@ -396,4 +405,13 @@ void vvDicomSeriesSelector::AddSerieToTheTable(int i, std::vector<std::string> &
 }
 //====================================================================
 
+
+//====================================================================
+void vvDicomSeriesSelector::itemMatrixSelectionChanged(int state)
+{
+  mPatientCoordinateSystem = state;
+}
+//====================================================================
+
+
 #endif // VVDICOMSERIESSELECTOR_CXX