]> SALOME platform Git repositories - plugins/gmshplugin.git/commitdiff
Salome HOME
Adding verbosity control for gmsh
authorYOANN AUDOUIN <B61570@dsp1062659>
Thu, 21 Dec 2023 10:45:13 +0000 (11:45 +0100)
committerYOANN AUDOUIN <B61570@dsp1062659>
Thu, 21 Dec 2023 12:41:51 +0000 (13:41 +0100)
idl/GMSHPlugin_Algorithm.idl
src/GMSHPlugin/GMSHPlugin_Hypothesis.cxx
src/GMSHPlugin/GMSHPlugin_Hypothesis.hxx
src/GMSHPlugin/GMSHPlugin_Hypothesis_i.cxx
src/GMSHPlugin/GMSHPlugin_Hypothesis_i.hxx
src/GMSHPlugin/GMSHPlugin_Mesher.cxx
src/GMSHPlugin/GMSHPlugin_Mesher.hxx
src/GUI/GMSHPluginGUI_HypothesisCreator.cxx
src/GUI/GMSHPluginGUI_HypothesisCreator.h
src/GUI/GMSHPlugin_msg_en.ts
src/GUI/GMSHPlugin_msg_fr.ts

index 902391d04b2ac03a969330bed19c0a15037371e2..cf0b5c37ebaef8192019c9ac30c85f706551ed19 100644 (file)
@@ -52,7 +52,7 @@ module GMSHPlugin
   interface GMSHPlugin_GMSH_2D : SMESH::SMESH_2D_Algo
   {
   };
-  
+
   /*!
    * GMSHPlugin_Hypothesis: interface of "GMSH parameters" hypothesis
    */
@@ -60,34 +60,34 @@ module GMSHPlugin
   {
     void Set2DAlgo(in long value);
     long Get2DAlgo();
-    
+
     void Set3DAlgo(in long value);
     long Get3DAlgo();
-    
+
     void SetRecomb2DAlgo(in long value);
     long GetRecomb2DAlgo();
-    
+
     void SetRecombineAll(in boolean value);
     boolean GetRecombineAll();
-    
+
     void SetSubdivAlgo(in long value);
     long GetSubdivAlgo();
-    
+
     void SetRemeshAlgo(in long value);
     long GetRemeshAlgo();
-    
+
     void SetRemeshPara(in long value);
     long GetRemeshPara();
-    
+
     void SetSmouthSteps(in double value);
     double GetSmouthSteps();
-    
+
     void SetSizeFactor(in double value);
     double GetSizeFactor();
 
     void SetMeshCurvatureSize(in double value);
     double GetMeshCurvatureSize();
-    
+
     void SetMaxSize(in double value);
     double GetMaxSize();
 
@@ -96,18 +96,21 @@ module GMSHPlugin
 
     void SetSecondOrder(in boolean value);
     boolean GetSecondOrder();
-    
+
     void SetUseIncomplElem(in boolean value);
     boolean GetUseIncomplElem();
-    
+
     void SetIs2d(in boolean value);
-    
+
+    void SetVerbosityLevel(in long value);
+    long GetVerbosityLevel();
+
     void SetCompoundOnShape(in GEOM::GEOM_Object GeomObj);
     void SetCompoundOnEntry(in string entry);
     void UnsetCompoundOnShape(in GEOM::GEOM_Object GeomObj);
     void UnsetCompoundOnEntry(in string entry);
     string_array GetCompoundOnEntries();
-    
+
   };
 
   /*!
index 19cacb820e71a10b517c95b3d71cbb26740721ae..7e99d354d31a819a12a71c0409c1107801aec67a 100644 (file)
@@ -50,7 +50,8 @@ GMSHPlugin_Hypothesis::GMSHPlugin_Hypothesis (int hypId,
     _minSize        (0),
     _maxSize        (1e22),
     _secondOrder    (false),
-    _useIncomplElem (true)
+    _useIncomplElem (true),
+    _verbLvl(status)
 {
   _name = "GMSH_Parameters";
   _param_algo_dim = 3;
@@ -189,6 +190,11 @@ void GMSHPlugin_Hypothesis::SetIs2d(bool theIs2d)
   _is2d = theIs2d;
 }
 
+void GMSHPlugin_Hypothesis::SetVerbosityLevel(Verbosity theLevel)
+{
+  _verbLvl = theLevel;
+}
+
 
 void GMSHPlugin_Hypothesis::SetCompoundOnEntry(const std::string& entry)
 {
index 5ef390c5a926da873f234043638e161b84277d76..42562d6d289e93d5c9a962e8d6ab490a2e19a217 100644 (file)
@@ -87,7 +87,7 @@ public:
 
   void SetRecomb2DAlgo(Recomb2DAlgo theRecomb2DAlgo);
   Recomb2DAlgo GetRecomb2DAlgo() const { return _recomb2DAlgo; }
-  
+
   void SetRecombineAll(bool theRecombineAll);
   bool GetRecombineAll() const { return _recombineAll; }
 
@@ -97,7 +97,7 @@ public:
    allquads,
    allhexas
   };
-  
+
   void SetSubdivAlgo(SubdivAlgo theSubdivAlgo);
   SubdivAlgo GetSubdivAlgo() const { return _subdivAlgo; }
 
@@ -107,7 +107,7 @@ public:
    automaticR,
    automaticmetis
   };
-  
+
   void SetRemeshAlgo(RemeshAlgo theRemeshAlgo);
   RemeshAlgo GetRemeshAlgo() const { return _remeshAlgo; }
 
@@ -117,16 +117,16 @@ public:
    conformal,
    rbfharmonic
   };
-  
+
   void SetRemeshPara(RemeshPara theRemeshPara);
   RemeshPara GetRemeshPara() const { return _remeshPara; }
-  
+
   void SetSmouthSteps(double theSmouthSteps);
   double GetSmouthSteps() const { return _smouthSteps; }
-  
+
   void SetSizeFactor(double theSizeFactor);
   double GetSizeFactor() const { return _sizeFactor; }
-  
+
   void SetUseIncomplElem(bool theUseIncomplElem);
   bool GetUseIncomplElem() const { return _useIncomplElem; }
 
@@ -134,10 +134,10 @@ public:
   void SetMeshCurvatureSize(double theMeshCurvatureSize);
   double GetMeshCurvatureSize() const { return _meshCurvatureSize; }
 #endif
-  
+
   void SetMaxSize(double theSize);
   double GetMaxSize() const { return _maxSize; }
-  
+
   void SetMinSize(double theSize);
   double GetMinSize() const { return _minSize; }
 
@@ -146,12 +146,33 @@ public:
 
   void SetIs2d(bool theIs2d);
   bool GetIs2d() const { return _is2d; }
-  
+
+  // Verbosity info:
+  // 0: silent except for fatal errors
+  // 1: +errors
+  // 2: +warnings
+  // 3: +direct
+  // 4: +information
+  // 5: +status
+  // 99: +debug
+  enum Verbosity
+  {
+   silent,
+   errors,
+   warnings,
+   direct,
+   information,
+   status,
+   debug
+  };
+  void SetVerbosityLevel(Verbosity theLevel);
+  Verbosity GetVerbosityLevel() const { return _verbLvl; }
+
   typedef std::set<std::string> TCompound;
   void SetCompoundOnEntry(const std::string& entry);
   const TCompound& GetCompoundOnEntries() const { return _compounds; }
   void UnsetCompoundOnEntry(const std::string& entry);
-  
+
   // Persistence
   virtual std::ostream & SaveTo(std::ostream & save);
   virtual std::istream & LoadFrom(std::istream & load);
@@ -186,6 +207,7 @@ private:
   double        _minSize, _maxSize;
   bool          _secondOrder, _useIncomplElem;
   bool          _is2d;
+  Verbosity     _verbLvl;
   TCompound     _compounds;
 };
 
index 036fdc9489d97861881651f7311189eba318ca3f..c311fe7200bf3af9442a44bbd4314b8a206cbb84 100644 (file)
@@ -39,7 +39,7 @@ bool GMSHPlugin_Hypothesis_i::isToSetParameter<double>(double curValue,
 GMSHPlugin_Hypothesis_i::
 GMSHPlugin_Hypothesis_i (PortableServer::POA_ptr thePOA,
                            ::SMESH_Gen*            theGenImpl)
-  : SALOME::GenericObj_i( thePOA ), 
+  : SALOME::GenericObj_i( thePOA ),
     SMESH_Hypothesis_i( thePOA ),
     mySetMethodFlags(0)
 {
@@ -200,7 +200,7 @@ void GMSHPlugin_Hypothesis_i::SetRemeshPara (CORBA::Long theValue)
   if ( isToSetParameter( GetRemeshPara(), theValue, METH_SetRemeshPara ))
   {
     this->GetImpl()->SetRemeshPara((::GMSHPlugin_Hypothesis::RemeshPara)theValue);
-    SMESH::TPythonDump() << _this() << ".SetRemeshAlgo( " << theValue << " )";
+    SMESH::TPythonDump() << _this() << ".SetRemeshPara( " << theValue << " )";
   }
 }
 
@@ -257,6 +257,20 @@ void GMSHPlugin_Hypothesis_i::SetIs2d (CORBA::Boolean theValue)
   SMESH::TPythonDump() << _this() << ".SetIs2d( " << theValue << " )";
 }
 
+void GMSHPlugin_Hypothesis_i::SetVerbosityLevel (CORBA::Long theValue)
+{
+  if ( isToSetParameter( GetVerbosityLevel(), theValue, METH_SetVerbosityLevel ))
+  {
+    this->GetImpl()->SetVerbosityLevel((::GMSHPlugin_Hypothesis::Verbosity)theValue);
+    SMESH::TPythonDump() << _this() << ".SetVerbosityLevel( " << theValue << " )";
+  }
+}
+
+CORBA::Long GMSHPlugin_Hypothesis_i::GetVerbosityLevel()
+{
+  return this->GetImpl()->GetVerbosityLevel();
+}
+
 void GMSHPlugin_Hypothesis_i::SetCompoundOnShape(GEOM::GEOM_Object_ptr GeomObj)
 {
   string entry;
@@ -309,13 +323,13 @@ void GMSHPlugin_Hypothesis_i::UnsetCompoundOnEntry(const char* entry)
 
 //================================================================================
 /*!
- * \brief Verify whether hypothesis supports given entity type 
+ * \brief Verify whether hypothesis supports given entity type
   * \param type - dimension (see SMESH::Dimension enumeration)
   * \retval CORBA::Boolean - TRUE if dimension is supported, FALSE otherwise
- * 
+ *
  * Verify whether hypothesis supports given entity type (see SMESH::Dimension enumeration)
  */
-//================================================================================  
+//================================================================================
 CORBA::Boolean GMSHPlugin_Hypothesis_i::IsDimSupported( SMESH::Dimension type )
 {
   return type == SMESH::DIM_3D;
index bd9ebb7b70ec8158ded262024ea05d3d0aa47d66..783626f5fd5bdfec241459706b8d12abb42ee42d 100644 (file)
@@ -44,20 +44,20 @@ class GMSHPLUGIN_EXPORT GMSHPlugin_Hypothesis_i:
                              ::SMESH_Gen*            theGenImpl);
   // Destructor
   virtual ~GMSHPlugin_Hypothesis_i();
-  
+
   // Ajout d'un truc
   void SetMeshCurvatureSize(CORBA::Double theMeshCurvatureSize);
   CORBA::Double GetMeshCurvatureSize();
-  
+
   void SetMaxSize(CORBA::Double theSize);
   CORBA::Double GetMaxSize();
-  
+
   void SetMinSize(CORBA::Double theSize);
   CORBA::Double GetMinSize();
-  
+
   void SetSecondOrder(CORBA::Boolean theVal);
   CORBA::Boolean GetSecondOrder();
-  
+
   void Set2DAlgo(CORBA::Long the2DAlgo);
   CORBA::Long Get2DAlgo();
   void Set3DAlgo(CORBA::Long the3DAlgo);
@@ -79,13 +79,15 @@ class GMSHPLUGIN_EXPORT GMSHPlugin_Hypothesis_i:
   void SetUseIncomplElem(CORBA::Boolean theUseIncomplElem);
   CORBA::Boolean GetUseIncomplElem();
   void SetIs2d(CORBA::Boolean theIs2d);
-  
+  void SetVerbosityLevel(CORBA::Long theVerbLvl);
+  CORBA::Long GetVerbosityLevel();
+
   void SetCompoundOnShape(GEOM::GEOM_Object_ptr GeomObj);
   void SetCompoundOnEntry(const char* entry);
   void UnsetCompoundOnShape(GEOM::GEOM_Object_ptr GeomObj);
   void UnsetCompoundOnEntry(const char* entry);
   GMSHPlugin::string_array* GetCompoundOnEntries();
-  
+
   // fin d'ajout
 
   void SetGrowthRate(CORBA::Double theRate);
@@ -101,13 +103,13 @@ class GMSHPLUGIN_EXPORT GMSHPlugin_Hypothesis_i:
   // void SetLocalSizeOnEntry(const char* entry, CORBA::Double localSize);
   // CORBA::Double GetLocalSizeOnEntry(const char* entry);
   // GMSHPlugin::string_array* GetLocalSizeEntries();
-  
+
   void UnsetLocalSizeOnEntry(const char* entry);
 
   // Get implementation
   ::GMSHPlugin_Hypothesis* GetImpl();
-  
-  // Verify whether hypothesis supports given entity type 
+
+  // Verify whether hypothesis supports given entity type
   CORBA::Boolean IsDimSupported( SMESH::Dimension type );
 
  protected:
@@ -138,6 +140,7 @@ class GMSHPLUGIN_EXPORT GMSHPlugin_Hypothesis_i:
     METH_SetSizeFactor       = 308,
     METH_SetUseIncomplElem   = 309,
     METH_SetIs2d             = 310,
+    METH_SetVerbosityLevel   = 311,
     // fin d'ajout
     METH_LAST                = METH_SetLocalSizeOnEntry
   };
index 8e8552e0214a5070ff55a72b5835213fe6dd0d15..b51ed7761b8e55dfa1ad91e155cf61bda91ea1d1 100644 (file)
@@ -192,7 +192,11 @@ void GMSHPlugin_Mesher::SetParameters(const GMSHPlugin_Hypothesis* hyp)
     _maxSize         = hyp->GetMaxSize();
     _secondOrder     = hyp->GetSecondOrder();
     _useIncomplElem  = hyp->GetUseIncomplElem();
+    _verbLvl         = hyp->GetVerbosityLevel();
     _compounds       = hyp->GetCompoundOnEntries();
+    // 6 in the enum corresponds to 99 in gmsh
+    if(_verbLvl == 6)
+      _verbLvl = 99;
   }
   else
   {
@@ -315,7 +319,7 @@ void GMSHPlugin_Mesher::FillGMSHMesh()
   for (auto const& ls : listElements)
   {
     // Add nodes of triangles and triangles them-selves to netgen mesh
-    // add three nodes of 
+    // add three nodes of
     bool hasDegen = false;
     for (int iN = 0; iN < 3; ++iN)
     {
@@ -341,7 +345,7 @@ void GMSHPlugin_Mesher::FillGMSHMesh()
     if (hasDegen && (aTrinagle[0] == aTrinagle[1] ||
       aTrinagle[0] == aTrinagle[2] ||
       aTrinagle[2] == aTrinagle[1]))
-      continue;
+        continue;
 
 
     std::vector<int> LinesID(3, 0);
@@ -464,6 +468,9 @@ void GMSHPlugin_Mesher::SetGmshOptions()
     ASSERT(ok);
   }
 
+  ok = GmshSetOption("General", "Verbosity"            , (double) _verbLvl )  ; // Verbosity level
+  ASSERT(ok);
+
 #if GMSH_MAJOR_VERSION >=4 && GMSH_MINOR_VERSION >=8
 /*ok = GmshSetOption("Mesh", "MaxNumThreads1D"          , 0. )  ; // Coarse-grain algo threads
   ASSERT(ok);
@@ -748,10 +755,10 @@ void GMSHPlugin_Mesher::FillSMesh()
         Standard_Real p1 = 1.0;
         TopLoc_Location loc;
         Handle(Geom_Curve) curve = BRep_Tool::Curve(topoEdge, loc, p0, p1);
-        
+
         if ( !curve.IsNull() )
         {
-          if ( !loc.IsIdentity() ) 
+          if ( !loc.IsIdentity() )
             point3D.Transform( loc.Transformation().Inverted() );
 
           GeomAPI_ProjectPointOnCurve proj(point3D, curve, p0, p1);
@@ -760,12 +767,12 @@ void GMSHPlugin_Mesher::FillSMesh()
           if ( proj.NbPoints() > 0 )
             pa = (double)proj.LowerDistanceParameter();
 
-          meshDS->SetNodeOnEdge( node, topoEdge, pa );  
+          meshDS->SetNodeOnEdge( node, topoEdge, pa );
         }
         else
-        {            
+        {
           meshDS->SetNodeOnEdge( node, topoEdge );
-        }                   
+        }
         //END on BLSURFPlugin_BLSURF
 
 
@@ -803,16 +810,16 @@ void GMSHPlugin_Mesher::FillSMesh()
         if ( verts[j]->onWhat()->getVisibility() == 0 )
         {
           SMDS_MeshNode *node = meshDS->AddNode(verts[j]->x(),verts[j]->y(),verts[j]->z() );
-          
+
           gp_Pnt point3D( verts[j]->x(),verts[j]->y(),verts[j]->z() );
           Standard_Real p0 = 0.0;
           Standard_Real p1 = 1.0;
           TopLoc_Location loc;
           Handle(Geom_Curve) curve = BRep_Tool::Curve(topoEdge, loc, p0, p1);
-          
+
           if ( !curve.IsNull() )
           {
-            if ( !loc.IsIdentity() ) 
+            if ( !loc.IsIdentity() )
               point3D.Transform( loc.Transformation().Inverted() );
 
             GeomAPI_ProjectPointOnCurve proj(point3D, curve, p0, p1);
@@ -821,13 +828,13 @@ void GMSHPlugin_Mesher::FillSMesh()
             if ( proj.NbPoints() > 0 )
               pa = (double)proj.LowerDistanceParameter();
 
-            meshDS->SetNodeOnEdge( node, topoEdge, pa );  
+            meshDS->SetNodeOnEdge( node, topoEdge, pa );
           }
           else
-          {            
+          {
             meshDS->SetNodeOnEdge( node, topoEdge );
-          }                   
-          
+          }
+
           verts[j]->setEntity(gEdge);
           _nodeMap.insert({ verts[j], node });
         }
@@ -1339,7 +1346,6 @@ bool GMSHPlugin_Mesher::Compute()
     }
     else
     {
-      //Msg::SetVerbosity(100);
       //CTX::instance()->mesh.maxNumThreads1D=1;
 
       _gModel->mesh( /*dim=*/ 1);
@@ -1414,7 +1420,7 @@ void GMSHPlugin_Mesher::Set1DSubMeshes( GModel* gModel )
     if ( gEdge->geomType() == GEntity::CompoundCurve )
 #endif
       continue;
-    
+
     TopoDS_Edge topoEdge = *((TopoDS_Edge*)gEdge->getNativePtr());
     if ( !HasSubMesh( topoEdge ))
       continue; // empty sub-mesh
index 22912e75b92a17bc8efca795a997c90bf37bb2ef..062b31879de48627ca3d1af3ca341e4102108956 100644 (file)
@@ -96,6 +96,7 @@ class GMSHPLUGIN_EXPORT GMSHPlugin_Mesher
   bool                 _secondOrder, _useIncomplElem;
   bool                 _is2d;
   bool                 _is3d;
+  int                  _verbLvl;
   GModel*              _gModel;
 #if GMSH_MAJOR_VERSION >=4 && GMSH_MINOR_VERSION >=3
   double               _maxThreads;
index a8e39a1f3f1d98678a7a02a80439f75d4f2b1be2..bfe524780140658f33a42efa9f5b4ec1a44aa857 100644 (file)
@@ -107,6 +107,17 @@ enum RemeshPara
    rbfharmonic
   };
 
+enum VerbLvl
+  {
+   silent,
+   errors,
+   warnings,
+   direct,
+   information,
+   status,
+   debug
+  };
+
 
 GMSHPluginGUI_HypothesisCreator::GMSHPluginGUI_HypothesisCreator( const QString& theHypType )
   : SMESHGUI_GenericHypothesisCreator( theHypType )
@@ -217,7 +228,7 @@ QFrame* GMSHPluginGUI_HypothesisCreator::buildFrame()
   row++;
 
   mySubdivAlgo = 0;
-  
+
   aGroupLayout->addWidget(new QLabel(tr("GMSH_SUBDIV_ALGO"), GroupC1), row, 0);
   mySubdivAlgo = new QComboBox(GroupC1);
   QStringList typesSubdivAlgo;
@@ -288,6 +299,14 @@ QFrame* GMSHPluginGUI_HypothesisCreator::buildFrame()
 
   connect( mySecondOrder, SIGNAL( toggled( bool ) ), this, SLOT( updateWidgets() ) );
 
+  aGroupLayout->addWidget( new QLabel( tr( "GMSH_VERB_LVL" ), GroupC1 ), row, 0 );
+  myVerbLvl = new QComboBox(GroupC1);
+  QStringList typesVerbLvl;
+  typesVerbLvl << tr("GMSH_SILENT") << tr("GMSH_ERRORS") << tr("GMSH_WARNINGS") << tr("GMSH_DIRECT") << tr("GMSH_INFORMATION") << tr("GMSH_STATUS") << tr("GMSH_DEBUG");
+  myVerbLvl->addItems(typesVerbLvl);
+  aGroupLayout->addWidget(myVerbLvl, row, 1);
+  row++;
+
   // Compounds
   if (!myIs3D)
   {
@@ -411,7 +430,7 @@ void GMSHPluginGUI_HypothesisCreator::retrieveParams() const
   if ( myRecombineAll )
     myRecombineAll->setChecked( data.myRecombineAll );
   if ( mySubdivAlgo )
-  mySubdivAlgo->setCurrentIndex( data.mySubdivAlgo );
+    mySubdivAlgo->setCurrentIndex( data.mySubdivAlgo );
   if (!myIs3D)
   {
     myRemeshAlgo->setCurrentIndex(data.myRemeshAlgo);
@@ -443,6 +462,8 @@ void GMSHPluginGUI_HypothesisCreator::retrieveParams() const
     mySecondOrder->setChecked( data.mySecondOrder );
   if ( myUseIncomplElem )
     myUseIncomplElem->setChecked( data.myUseIncomplElem );
+  if (myVerbLvl)
+    myVerbLvl->setCurrentIndex(data.myVerbLvl);
 
   GMSHPluginGUI_HypothesisCreator* that = (GMSHPluginGUI_HypothesisCreator*)this;
   that->updateWidgets();
@@ -512,6 +533,7 @@ bool GMSHPluginGUI_HypothesisCreator::readParamsFromHypo( GmshHypothesisData& h_
   h_data.myMaxSizeVar = getVariableName("SetMaxSize");
   h_data.mySecondOrder = h->GetSecondOrder();
   h_data.myUseIncomplElem = h->GetUseIncomplElem();
+  h_data.myVerbLvl = (int) h->GetVerbosityLevel();
 
   GMSHPluginGUI_HypothesisCreator* that = (GMSHPluginGUI_HypothesisCreator*)this;
   GMSHPlugin::string_array_var myEntries = h->GetCompoundOnEntries();
@@ -564,6 +586,7 @@ bool GMSHPluginGUI_HypothesisCreator::storeParamsToHypo( const GmshHypothesisDat
     h->SetSecondOrder( h_data.mySecondOrder );
     h->SetUseIncomplElem( h_data.myUseIncomplElem );
     h->SetIs2d( myIs2D );
+    h->SetVerbosityLevel(h_data.myVerbLvl);
 
     QString mainEntry = getMainShapeEntry();
     for (QSet<QString>::const_iterator i = myCompoundSet.begin(); i != myCompoundSet.end(); ++i)
@@ -622,6 +645,7 @@ bool GMSHPluginGUI_HypothesisCreator::readParamsFromWidgets( GmshHypothesisData&
   h_data.myMaxSizeVar     = myMaxSize->text();
   h_data.mySecondOrder    = mySecondOrder->isChecked();
   h_data.myUseIncomplElem = myUseIncomplElem->isChecked();
+  h_data.myVerbLvl        = myVerbLvl->currentIndex();
 
   // ne semble pas utile dans la mesure ou myCompoundSet n'a pas besoin d'etre modifier
   /*
index 89d6eaf4666aade48fe123e9c249ce2b969894a1..981fb873d6c3657d0be7ab26ead01ac21aaea865 100644 (file)
@@ -53,6 +53,7 @@ typedef struct
   QString             myMaxSizeVar, myMinSizeVar, mySmouthStepsVar, mySizeFactorVar;
 #endif
   mutable QString     myErrorMsg;
+  int                 myVerbLvl;
 } GmshHypothesisData;
 
 /*!
@@ -73,7 +74,7 @@ protected:
   virtual QFrame*  buildFrame    ();
   virtual void     retrieveParams() const;
   virtual QString  storeParams   () const;
-  
+
   virtual QString  caption() const;
   virtual QPixmap  icon() const;
   virtual QString  type() const;
@@ -82,7 +83,7 @@ protected slots:
   void               updateWidgets();
   virtual void       onAddCompound();
   virtual void       onRemoveCompound();
-  
+
 private:
   bool readParamsFromHypo( GmshHypothesisData& ) const;
   bool readParamsFromWidgets( GmshHypothesisData& ) const;
@@ -107,6 +108,7 @@ private:
  SMESHGUI_SpinBox* myMinSize;
  QCheckBox*        myUseIncomplElem;
  QCheckBox*        mySecondOrder;
+ QComboBox*        myVerbLvl;
  bool myIs2D;
  bool myIs3D;
 
index 167f7ec83fa06f635be105ccf81c7b6732e184a6..7dce3a04c8153e4d45ee074092c06fe7b4f32c5f 100644 (file)
         <source>GMSH_SECOND_ORDER</source>
         <translation>Second Order</translation>
     </message>
+    <message>
+        <source>GMSH_VERB_LVL</source>
+        <translation>Verbosity Level</translation>
+    </message>
+    <message>
+        <source>GMSH_SILENT</source>
+        <translation>Silent</translation>
+    </message>
+    <message>
+        <source>GMSH_ERRORS</source>
+        <translation>Errors</translation>
+    </message>
+    <message>
+        <source>GMSH_WARNINGS</source>
+        <translation>Warnings</translation>
+    </message>
+    <message>
+        <source>GMSH_DIRECT</source>
+        <translation>Direct</translation>
+    </message>
+    <message>
+        <source>GMSH_INFORMATION</source>
+        <translation>Information</translation>
+    </message>
+    <message>
+        <source>GMSH_STATUS</source>
+        <translation>Status</translation>
+    </message>
+    <message>
+        <source>GMSH_DEBUG</source>
+        <translation>Debug</translation>
+    </message>
     <message>
         <source>GMSH_COMPOUND</source>
         <translation>Compounds</translation>
index aba708808b5fc9635d16f14c884a6e84f7cb2308..b363298172a1e9fbefe6b2d7b9343eef465bd7c5 100644 (file)
         <source>GMSH_SECOND_ORDER</source>
         <translation>Second ordre</translation>
     </message>
+    <message>
+        <source>GMSH_VERB_LVL</source>
+        <translation>Niveau de verbosité</translation>
+    </message>
+    <message>
+        <source>GMSH_SILENT</source>
+        <translation>Silencieux</translation>
+    </message>
+    <message>
+        <source>GMSH_ERRORS</source>
+        <translation>Erreurs</translation>
+    </message>
+    <message>
+        <source>GMSH_WARNINGS</source>
+        <translation>Avertissement</translation>
+    </message>
+    <message>
+        <source>GMSH_DIRECT</source>
+        <translation>Direct</translation>
+    </message>
+    <message>
+        <source>GMSH_INFORMATION</source>
+        <translation>Information</translation>
+    </message>
+    <message>
+        <source>GMSH_STATUS</source>
+        <translation>Status</translation>
+    </message>
+    <message>
+        <source>GMSH_DEBUG</source>
+        <translation>Debug</translation>
+    </message>
     <message>
         <source>GMSH_COMPOUND</source>
         <translation>Compounds</translation>