Salome HOME
22364: EDF SMESH: Create Mesh dialog box improvement: hide inapplicable algorithms...
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_MeshOp.cxx
index babfd2f22caa0c7624edce4873a70cdf4989c36c..b8b73db38494950beca98d8676fb13c3fa38e85e 100644 (file)
@@ -2606,14 +2606,16 @@ void SMESHGUI_MeshOp::setFilteredAlgoData( const int theTabIndex, const int theI
       if ( isAvailableChoiceAlgo )
         setCurrentHyp( dim, Algo, anCurrentAvailableAlgo );
     }
-    int aDimNotGeometry = ( myIsOnGeometry ) ? SMESH::DIM_0D : SMESH::DIM_3D;
     if ( !myIsOnGeometry )
-      for ( int i = SMESH::DIM_0D; i <= SMESH::DIM_3D; i++ ){
-        myDlg->disableTab( i );
+      for ( int i = SMESH::DIM_0D; i <= SMESH::DIM_3D; i++ ) {
+        if ( i < SMESH::DIM_3D ) myDlg->disableTab( i );
+        else                     myDlg->enableTab( i );
+      }
+    else
+      for ( int i = SMESH::DIM_0D; i <= SMESH::DIM_3D; i++ ) {
+        if ( i > myMaxShapeDim ) myDlg->disableTab( i );
+        else                     myDlg->enableTab( i );
       }
-    for ( int i = aDimNotGeometry; i <= myMaxShapeDim; i++ ) {
-      myDlg->enableTab( i );
-    }
     myDlg->setCurrentTab( theTabIndex );
   }
   else