- // Show dialog and check if it was accepted
- QFileDialog dialog( this );
- dialog.setFileMode( QFileDialog::ExistingFiles );
- dialog.setDirectory( tr( "." ) );
- dialog.setNameFilter(
- tr( "Medical image files (*.mhd *.bin *.dcm *.nrri);;All files (*)" )
- );
- dialog.setDefaultSuffix( tr( "mhd" ) );
- if( !( dialog.exec( ) ) )
- return;
-
- this->m_InputImage = NULL;
-
- // Get a reader from plugins
- TPluginFilter::Pointer reader =
- this->m_Plugins.CreateProcessObject( this->m_ImageReaderClass );
-
- // Configure reader
- TParameters reader_params = reader->GetDefaultParameters( );
- QStringList q_fnames = dialog.selectedFiles( );
- QStringList::const_iterator qIt = q_fnames.begin( );
- for( ; qIt != q_fnames.end( ); ++qIt )
- reader_params.AddValueToStringList( "FileNames", qIt->toStdString( ) );
- reader->SetParameters( reader_params );
-
- // Execute and get error message, if any
- std::string err = reader->Update( );
-
- // Assign fresh image, if any
- if( err == "" )