]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
disable MG_ADAPT for Windows
authorViktor Uzlov <viktor.uzlov@opencascade.com>
Wed, 24 Mar 2021 20:29:43 +0000 (23:29 +0300)
committerViktor Uzlov <viktor.uzlov@opencascade.com>
Wed, 24 Mar 2021 20:29:43 +0000 (23:29 +0300)
CMakeLists.txt
src/SMESH/MG_ADAPT.cxx
src/SMESHGUI/SMESHGUI.cxx
src/SMESH_I/MG_ADAPT_i.cxx

index 242782dc419e25991699cecc0753e2f3acacbf4e..2935fe10c01434d95ed53e2e0df862cdc43b3f1f 100644 (file)
@@ -240,6 +240,11 @@ IF(WIN32)
   ENDIF(${F2C_FOUND})
 ENDIF(WIN32)
 
+#On Linux enable MG_ADAPT
+IF(NOT WIN32)
+  ADD_DEFINITIONS(-DMGADAPT_ENABLE)
+ENDIF(NOT WIN32)
+
 IF(SALOME_SMESH_ENABLE_MEFISTO)
  SET(MEFISTO2D_NAME "MEFISTO_2D")
 ELSE(SALOME_SMESH_ENABLE_MEFISTO)
index a691836d4b7f6cd279fa94cc34fd55fc3603217e..471203ad38fc434d24697ec6043b3e8400381e47 100644 (file)
 #include <MeshFormatWriter.hxx>
 
 #include <Utils_SALOME_Exception.hxx>
+#include <Basics_Utils.hxx>
 
 #ifndef WIN32
 #include <unistd.h> // getpid()
 #else
 #include <process.h>
 #endif
+#include <fcntl.h>
 #include <array>
 #include <memory>   // unique_ptr
 
@@ -866,8 +868,9 @@ void MgAdapt::execCmd( const char* cmd, int& err)
 
   
 #if defined(WIN32)
-#if defined(INICODE)
-  std::unique_ptr <FILE, decltype(&_pclose)> pipe(_wopen(cmd, "r"), _pclose );
+#if defined(UNICODE)
+  const wchar_t * aCmd = Kernel_Utils::utf8_decode(cmd);
+  std::unique_ptr <FILE, decltype(&_pclose)> pipe(_wpopen(aCmd, O_RDONLY), _pclose );
 #else
   std::unique_ptr <FILE, decltype(&_pclose)> pipe(_popen(cmd, "r"), _pclose );
 #endif
index beb071a3932b8941817122a7d2d5f4929debca2c..0b16abc3ec25a779f5d045dae1e187d84b5f4947 100644 (file)
@@ -3044,6 +3044,7 @@ bool SMESHGUI::OnGUIEvent( int theCommandID )
       break;
     }
   // Adaptation - begin
+#if defined(MGADAPT_ENABLE)
   case SMESHOp::OpMGAdapt:
     {
       if ( isStudyLocked() )
@@ -3055,6 +3056,7 @@ bool SMESHGUI::OnGUIEvent( int theCommandID )
       ( new SMESHGUI_MG_ADAPTDRIVER( this, model, isCreation ))->show();
       break;
     }
+#endif
   // Adaptation - end
   case SMESHOp::OpSplitBiQuadratic:
   case SMESHOp::OpConvertMeshToQuadratic:
@@ -4294,7 +4296,9 @@ void SMESHGUI::initialize( CAM_Application* app )
   createSMESHAction( SMESHOp::OpDisableAutoColor, "DISABLE_AUTO_COLOR" );
 
   // Adaptation - begin
+#if defined(MGADAPT_ENABLE)
   createSMESHAction( SMESHOp::OpMGAdapt,              "MG_ADAPT",                "ICON_MG_ADAPT" );
+#endif
   // Adaptation - end
 
   createSMESHAction( SMESHOp::OpMinimumDistance,  "MEASURE_MIN_DIST", "ICON_MEASURE_MIN_DIST" );
@@ -4512,7 +4516,9 @@ void SMESHGUI::initialize( CAM_Application* app )
   createMenu( SMESHOp::OpPatternMapping,         modifyId, -1 );
 
   // Adaptation - begin
+#if defined(MGADAPT_ENABLE)
   createMenu( SMESHOp::OpMGAdapt,              adaptId, -1 );
+#endif
   // Adaptation - end
 
   createMenu( SMESHOp::OpMinimumDistance,  measureId,   -1 );
@@ -4659,8 +4665,10 @@ void SMESHGUI::initialize( CAM_Application* app )
   createTool( SMESHOp::OpPatternMapping,         modifyTb );
 
   // Adaptation - begin
+#if defined(MGADAPT_ENABLE)
   int adaptTb      = createTool( tr( "TB_ADAPTATION" ),QString( "SMESHAdaptationToolbar" ) ) ;
   createTool( SMESHOp::OpMGAdapt,              adaptTb );
+#endif
   // Adaptation - end
 
   int measuremTb   = createTool( tr( "TB_MEASUREM" ),  QString( "SMESHMeasurementsToolbar" ) ) ;
@@ -4745,7 +4753,9 @@ void SMESHGUI::initialize( CAM_Application* app )
   popupMgr()->insert( separator(), -1, 0 );
 
   // Adaptation - begin
+#if defined(MGADAPT_ENABLE)
   createPopupItem( SMESHOp::OpMGAdapt,              OB, mesh );
+#endif
   // Adaptation - end
 
   QString only_one_non_empty = QString( " && %1=1 && numberOfNodes>0" ).arg( dc );
@@ -6017,8 +6027,10 @@ LightApp_Operation* SMESHGUI::createOperation( const int id ) const
     op = new SMESHGUI_Add0DElemsOnAllNodesOp();
     break;
   // Adaptation - begin
+#if defined(MGADAPT_ENABLE)
   case SMESHOp::OpMGAdapt:
     break;
+#endif
   // Adaptation - end
   default:
     break;
index f2bd58ede4d3fdc240d4670cc02eaaef8e6c11c8..8c20914f7625e9550c89b930b8b7dcee01e95b61 100644 (file)
@@ -96,25 +96,34 @@ void MG_ADAPT_i::copyHypothesisDataFromImpl(const ::MG_ADAPT::MgAdaptHypothesisD
 
 SMESH::MG_ADAPT_ptr SMESH_Gen_i::CreateMG_ADAPT()
 {
+#if defined(MGADAPT_ENABLE)
   SMESH::MG_ADAPT_i* aMGadapt = new SMESH::MG_ADAPT_i();
   SMESH::MG_ADAPT_var anObj = aMGadapt->_this();
   return anObj._retn();
+#else
+  return SMESH::MG_ADAPT_ptr();
+#endif
 }
 SMESH::MG_ADAPT_ptr SMESH_Gen_i::CreateAdaptationHypothesis()
 {
+#if defined(MGADAPT_ENABLE)
   SMESH::MG_ADAPT_i* aMGadapt = new SMESH::MG_ADAPT_i();
   SMESH::MG_ADAPT_var anObj = aMGadapt->_this();
   return anObj._retn();
+#else
+  return SMESH::MG_ADAPT_ptr();
+#endif
 }
 SMESH::MG_ADAPT_OBJECT_ptr SMESH_Gen_i::Adaptation( const char* adaptationType)
 {
-
+#if defined(MGADAPT_ENABLE)
   if (!strcmp(adaptationType, "MG_Adapt"))
   {
     SMESH::MG_ADAPT_OBJECT_i* mg_adapt_object = new SMESH::MG_ADAPT_OBJECT_i();
     SMESH::MG_ADAPT_OBJECT_var anObj = mg_adapt_object->_this();
     return anObj._retn();
   }
+#endif
   return SMESH::MG_ADAPT_OBJECT_ptr();
 }
 //=============================================================================