]> SALOME platform Git repositories - modules/smesh.git/blobdiff - src/SMESHGUI/SMESHGUI_MG_ADAPTDRIVER.cxx
Salome HOME
for MG-adapt TUI
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_MG_ADAPTDRIVER.cxx
index 1e732a8a098286e7d8cde59adb4e61a186509b8e..0025f57510662454394c90cfebfc262c2536c11f 100644 (file)
@@ -233,33 +233,8 @@ int IObjectCount()
 }
 
 
-SMESHGUI_MG_AdaptComputeDlg_QThread::SMESHGUI_MG_AdaptComputeDlg_QThread(MgAdapt* aModel)
-{
-    model = aModel;
-    myResult = -1;
-}
-
-void SMESHGUI_MG_AdaptComputeDlg_QThread::run()
-{
-
-    int err;
-    std::string errStr;
-    errStr = model->compute(errStr);
-    std::string msg = err == 0 ? " ok" : std::string("Not ok \n")+ errStr;
-    exec();
-}
-
-int SMESHGUI_MG_AdaptComputeDlg_QThread::result()
-{
-    return myResult;
-}
-
-void SMESHGUI_MG_AdaptComputeDlg_QThread::cancel()
-{
-    //~model->cancel();
-}
 
-SMESHGUI_MG_ADAPTDRIVER::SMESHGUI_MG_ADAPTDRIVER( SMESHGUI* theModule, MgAdapt* myModel, bool isCreation )
+SMESHGUI_MG_ADAPTDRIVER::SMESHGUI_MG_ADAPTDRIVER( SMESHGUI* theModule, SMESH::MG_ADAPT_ptr myModel, bool isCreation )
     : mySMESHGUI( theModule ),
       myFilterDlg(0),
       myIsApplyAndClose( false ),
@@ -339,6 +314,13 @@ void SMESHGUI_MG_ADAPTDRIVER::selectionChanged()
         myArgs->aBrowserObject->setText( aString );
         myArgs->meshNameLineEdit->setText( aString );
         myArgs->selectOutMedFileLineEdit->setText(aString+QString(".med"));
+        ADAPTATION_MODE aMode;
+        int nbVolumes = myMesh->NbVolumes();
+        int nbFaces = myMesh->NbFaces();
+        if(nbFaces > 0 && nbVolumes > 0) aMode = ADAPTATION_MODE::BOTH;
+        else if(nbFaces > 0) aMode = ADAPTATION_MODE::SURFACE;
+        else aMode = ADAPTATION_MODE::VOLUME;
+        emit myArgs->meshDimSignal(aMode);
     }
 
 }
@@ -390,11 +372,13 @@ bool SMESHGUI_MG_ADAPTDRIVER::execute()
 {
 
     int err;
-    std::string errStr;
+    //~std::string errStr;
+    char* errStr;
     try
     {
-        err = getModel()->compute(errStr);
-        std::string msg =  err == 0 ? " ok" : std::string("Not ok \n")+errStr ;
+        err = getModel()->compute();
+        errStr = getModel()->getErrMsg();
+        std::string msg =  err == 0 ? " ok" : std::string("Not ok \n")+CORBA::string_dup(errStr) ;
     }
     catch (const std::exception& e)
     {
@@ -604,7 +588,7 @@ bool SMESHGUI_MG_ADAPTDRIVER::isValid()
 
 bool SMESHGUI_MG_ADAPTDRIVER::createMeshInObjectBrowser()
 {
-    QString filename(getModel()->getMedFileOut().c_str());
+    QString filename(getModel()->getMedFileOut());
     QStringList errors;
     QStringList anEntryList;
     bool isEmpty = false;