Salome HOME
Merge branch 'V9_9_BR'
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_AddMeshElementDlg.cxx
index aea995c8823cd43610f476b0bde02abcaff123e4..709f51da91d7bbb3385072297c6306183fc39422 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2022  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -40,7 +40,7 @@
 #include <SMESH_FaceOrientationFilter.h>
 #include <SMDS_Mesh.hxx>
 
-// SALOME GUI inclues
+// SALOME GUI includes
 #include <SUIT_Desktop.h>
 #include <SUIT_Session.h>
 #include <SUIT_ResourceMgr.h>
@@ -56,7 +56,7 @@
 #include <Qtx.h>
 
 
-// IDL incldues
+// IDL includes
 #include CORBA_SERVER_HEADER(SMESH_MeshEditor)
 
 // OCCT includes
@@ -217,6 +217,7 @@ namespace SMESH
     void SetBallPosition(SMESH_Actor* theActor,TVTKIds& theIds, double theDiameter)
     {
       vtkUnstructuredGrid *aGrid = theActor->GetUnstructuredGrid();
+      myBallPolyData->SetPoints(NULL);
       myBallPolyData->Reset();
       myBallPolyData->DeleteCells();
       myBallPolyData->SetPoints(aGrid->GetPoints());
@@ -307,68 +308,68 @@ SMESHGUI_AddMeshElementDlg::SMESHGUI_AddMeshElementDlg( SMESHGUI*          theMo
     myNbNodes = 1;
     myElementType = SMDSAbs_0DElement;
     elemName = "ELEM0D";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_0delems_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-0delems-anchor";
     break;
   case SMDSEntity_Ball:
     myNbNodes = 1;
     myElementType = SMDSAbs_Ball;
     elemName = "BALL";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_ball_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-balls-anchor";
     break;
   case SMDSEntity_Edge:
     myNbNodes = 2;
     myElementType = SMDSAbs_Edge;
     elemName = "EDGE";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_edges_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-edges-anchor";
     break;
   case SMDSEntity_Triangle:
     myNbNodes = 3;
     elemName = "TRIANGLE";
     myElementType = SMDSAbs_Face;
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_triangles_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-triangles-anchor";
     break;
   case SMDSEntity_Quadrangle:
     myNbNodes = 4;
     myElementType = SMDSAbs_Face;
     elemName = "QUADRANGLE";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_quadrangles_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-quadrangles-anchor";
     break;
   case SMDSEntity_Polygon:
     myNbNodes = 0;
     myElementType = SMDSAbs_Face;
     elemName = "POLYGON";
     myIsPoly = true;
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_polygons_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-polygons-anchor";
     break;
   case SMDSEntity_Tetra:
     myNbNodes = 4;
     elemName = "TETRAS";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_tetrahedrons_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-tetrahedrons-anchor";
     break;
   case SMDSEntity_Pyramid:
     myNbNodes = 5;
     elemName = "PYRAMID";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_pyramids_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-pyramids-anchor";
     break;
   case SMDSEntity_Hexa:
     myNbNodes = 8;
     elemName = "HEXAS";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_hexahedrons_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-hexahedrons-anchor";
     break;
   case SMDSEntity_Penta:
     myNbNodes = 6;
     elemName = "PENTA";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_pentahedrons_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-pentahedrons-anchor";
     break;
   case SMDSEntity_Hexagonal_Prism:
     myNbNodes = 12;
     elemName = "OCTA";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_octahedrons_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-octahedrons-anchor";
     break;
   default:
     myNbNodes = 2;
     elemName = "EDGE";
-    myHelpFileName = "adding_nodes_and_elements_page.html#adding_edges_anchor";
+    myHelpFileName = "adding_nodes_and_elements.html#adding-edges-anchor";
   }
 
   QString iconName      = tr(QString("ICON_DLG_%1").arg(elemName).toLatin1().data());
@@ -552,7 +553,7 @@ void SMESHGUI_AddMeshElementDlg::ClickOnApply()
   if (myNbOkNodes && !SMESHGUI::isStudyLocked()) {
     myBusy = true;
     QStringList aListId = myEditCurrentArgument->text().split(" ", QString::SkipEmptyParts);
-    SMESH::long_array_var anArrayOfIndices = new SMESH::long_array;
+    SMESH::smIdType_array_var anArrayOfIndices = new SMESH::smIdType_array;
     anArrayOfIndices->length(aListId.count());
     const std::vector<int>& revIndex = SMDS_MeshCell::reverseSmdsOrder( myGeomType );
     if ( ReverseOrDulicate && ReverseOrDulicate->isChecked() && (int)revIndex.size() == aListId.count() )
@@ -597,10 +598,10 @@ void SMESHGUI_AddMeshElementDlg::ClickOnApply()
     }
 
     SMESH::SMESH_MeshEditor_var aMeshEditor = myMesh->GetMeshEditor();
-    SMESH::long_array_var anIdList = new SMESH::long_array;
+    SMESH::smIdType_array_var anIdList = new SMESH::smIdType_array;
     anIdList->length( 1 );
     anIdList[0] = -1;
-    int nbElemsBefore = 0;
+    smIdType nbElemsBefore = 0;
 
     switch (myElementType) {
     case SMDSAbs_0DElement: {
@@ -610,7 +611,7 @@ void SMESHGUI_AddMeshElementDlg::ClickOnApply()
       for ( size_t i = 0; i < anArrayOfIndices->length(); ++i )
         anIdList[i] = aMeshEditor->Add0DElement(anArrayOfIndices[i], duplicateElements);
 
-      CORBA::ULong nbAdded = myMesh->Nb0DElements() - nbElemsBefore;
+      SMESH::smIdType nbAdded = myMesh->Nb0DElements() - nbElemsBefore;
       if ( !duplicateElements && nbAdded < anArrayOfIndices->length() )
         SUIT_MessageBox::information(SMESHGUI::desktop(),
                                      tr("SMESH_INFORMATION"),
@@ -777,13 +778,13 @@ void SMESHGUI_AddMeshElementDlg::onTextChange (const QString& theNewText)
 
   mySimulation->SetVisibility(false);
 
-  // hilight entered nodes
+  // highlight entered nodes
   SMDS_Mesh* aMesh = 0;
   if (myActor)
     aMesh = myActor->GetObject()->GetMesh();
 
   if (aMesh) {
-    TColStd_MapOfInteger newIndices;
+    SVTK_TVtkIDsMap newIndices;
 
     QStringList aListId = theNewText.split(" ", QString::SkipEmptyParts);
     bool allOk = true;