Salome HOME
22364: EDF SMESH: Create Mesh dialog box improvement: hide inapplicable algorithms...
authoreap <eap@opencascade.com>
Wed, 26 Feb 2014 08:57:20 +0000 (12:57 +0400)
committereap <eap@opencascade.com>
Wed, 26 Feb 2014 08:57:20 +0000 (12:57 +0400)
Bug: 3D tab disabled on an imported mesh

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