X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_ImportSinusXOp.cxx;h=73125df6a68e8fe99247229ba4f374dbe31d81ec;hb=8255eee47f0b0c5d396725421b65094f439b430a;hp=4f30e80256c3ee52da222e821eadd0570ff4b6b4;hpb=fcf6bb94aa4bb389b1e4b2150d631048ef89e1ad;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_ImportSinusXOp.cxx b/src/HYDROGUI/HYDROGUI_ImportSinusXOp.cxx index 4f30e802..73125df6 100644 --- a/src/HYDROGUI/HYDROGUI_ImportSinusXOp.cxx +++ b/src/HYDROGUI/HYDROGUI_ImportSinusXOp.cxx @@ -40,6 +40,7 @@ #include #include +#include HYDROGUI_ImportSinusXOp::HYDROGUI_ImportSinusXOp( HYDROGUI_Module* theModule ) @@ -59,7 +60,7 @@ void HYDROGUI_ImportSinusXOp::startOperation() myFileDlg = new SUIT_FileDlg( module()->getApp()->desktop(), true ); myFileDlg->setWindowTitle( getName() ); myFileDlg->setFileMode( SUIT_FileDlg::ExistingFiles ); - myFileDlg->setFilter( tr("SINUSX_FILTER") ); + myFileDlg->setNameFilter( tr("SINUSX_FILTER") ); connect( myFileDlg, SIGNAL( accepted() ), this, SLOT( onApply() ) ); connect( myFileDlg, SIGNAL( rejected() ), this, SLOT( onCancel() ) ); @@ -77,8 +78,7 @@ void HYDROGUI_ImportSinusXOp::onApply() QStringList aFileNames = myFileDlg->selectedFiles(); bool IsImported = false; - - QApplication::setOverrideCursor( Qt::WaitCursor ); + startDocOperation(); foreach (QString aFileName, aFileNames) @@ -91,11 +91,34 @@ void HYDROGUI_ImportSinusXOp::onApply() if (anExt == "sx") { HYDROData_SinusX aSinusXImporter; - NCollection_Sequence anEntities; - if (aSinusXImporter.Import(aFileName, doc(), anEntities)) + NCollection_Sequence anEntities; + QApplication::setOverrideCursor( Qt::WaitCursor ); + bool ParseStat = aSinusXImporter.OpenAndParse(aFileName); + QApplication::restoreOverrideCursor(); + if (ParseStat) { - UpdateView(anEntities); - IsImported = true; + std::vector aCurveBlocks = aSinusXImporter.GetCurveBlocks(); + QStringList names; + std::vector types; + for (int i=0;igetApp()->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 options = aDLG->GetImportOptions(); + aSinusXImporter.Import(doc(), anEntities, &options); + UpdateView(anEntities); + QApplication::restoreOverrideCursor(); + IsImported = true; + } } } } @@ -112,7 +135,7 @@ void HYDROGUI_ImportSinusXOp::onApply() QApplication::restoreOverrideCursor(); } -void HYDROGUI_ImportSinusXOp::UpdateView( NCollection_Sequence& anEntities) +void HYDROGUI_ImportSinusXOp::UpdateView( NCollection_Sequence& anEntities) { size_t anActiveViewId = HYDROGUI_Tool::GetActiveGraphicsViewId( module() ); if ( anActiveViewId == 0 )