#include "OpenFileAction.h" #include #include #include #include #include "IO/DICOM/DicomLoader.h" #include "DICOMPropertiesStore.h" OpenFileAction::OpenFileAction(const QString& aName,QWidget* aParent) : QAction(aName, aParent) { connect(this,&QAction::triggered,this,&OpenFileAction::executeAction); } OpenFileAction::~OpenFileAction() { } void OpenFileAction::executeAction() { QString path = QFileDialog::getOpenFileName(menu());; DicomLoader::InitCodecs(); std::string file = path.toStdString(); std::vector vector; int count = 0; DicomLoader::readPropertiesFromFile(file,vector, count); DicomLoader::FinalizeCodecs(); if( vector.empty()){ emit dataLoaded(false); return; } DICOMPropertiesStore::GetInstance()->reset(); for (auto item : vector) { DICOMPropertiesStore::GetInstance()->addProperty(item); } emit dataLoaded(true); }