Salome HOME
latests developments debug and porting Python3
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_ImportSinusXOp.cxx
index 38b5cf4cb14ebf1389c2fa81d81e76b30d58512f..73125df6a68e8fe99247229ba4f374dbe31d81ec 100644 (file)
@@ -40,6 +40,7 @@
 #include <QMessageBox>
 
 #include <HYDROData_SinusX.h>
+#include <HYDROGUI_ImportSinusXDlg.h>
 
 
 HYDROGUI_ImportSinusXOp::HYDROGUI_ImportSinusXOp( HYDROGUI_Module* theModule )
@@ -77,8 +78,7 @@ void HYDROGUI_ImportSinusXOp::onApply()
 
   QStringList aFileNames = myFileDlg->selectedFiles();
   bool IsImported = false;
-  
-  QApplication::setOverrideCursor( Qt::WaitCursor );  
+
   startDocOperation();
 
   foreach (QString aFileName, aFileNames) 
@@ -92,10 +92,33 @@ void HYDROGUI_ImportSinusXOp::onApply()
     {
       HYDROData_SinusX aSinusXImporter;
       NCollection_Sequence<Handle(HYDROData_Entity)> anEntities;
-      if (aSinusXImporter.Import(aFileName, doc(), anEntities)) 
+      QApplication::setOverrideCursor( Qt::WaitCursor );  
+      bool ParseStat = aSinusXImporter.OpenAndParse(aFileName);
+      QApplication::restoreOverrideCursor();
+      if (ParseStat)
       {
-        UpdateView(anEntities);
-        IsImported = true;
+        std::vector<HYDROGUI_CurveBlock> aCurveBlocks = aSinusXImporter.GetCurveBlocks();
+        QStringList names;
+        std::vector<int> types;
+        for (int i=0;i<aCurveBlocks.size();i++)
+        {
+          HYDROGUI_CurveBlock CurveBlock = aCurveBlocks[i];
+          types.push_back(CurveBlock.myType);
+          names << CurveBlock.myName;
+        }
+        HYDROGUI_ImportSinusXDlg* aDLG = new HYDROGUI_ImportSinusXDlg( module()->getApp()->desktop(), names, types );
+        aDLG->setModal( true );
+        aDLG->setWindowTitle(tr("ENTITIES_TO_IMPORT_FROM_SX"));
+        //QApplication::restoreOverrideCursor();
+        if( aDLG->exec()==QDialog::Accepted ) //??
+        {
+          QApplication::setOverrideCursor( Qt::WaitCursor );
+          std::vector<HYDROData_SinusX::ImportOptions> options = aDLG->GetImportOptions();
+          aSinusXImporter.Import(doc(), anEntities, &options);
+          UpdateView(anEntities);
+          QApplication::restoreOverrideCursor();
+          IsImported = true;
+        }
       }
     }
   }