Salome HOME
Fix of IPAL19633 (Qt4 porting. Strange value of Tolerance when use spin box): set...
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_ComputeDlg.cxx
index 195295c12a29b94c5a9b0bd1bc8e5d695396be96..6d7036a6336cdf48c807e0a754c61eff750ce5cb 100644 (file)
@@ -182,7 +182,7 @@ namespace SMESH
     // -----------------------------------------------------------------------
     bool HasReadyActorsFor (int subShapeID, GEOM::GEOM_Object_var aMainShape )
     {
-      string mainEntry;
+      std::string mainEntry;
       if ( !aMainShape->_is_nil() )
         mainEntry = aMainShape->GetStudyEntry();
       return ( myMainEntry == mainEntry &&
@@ -192,7 +192,7 @@ namespace SMESH
     void Show( int subShapeID, GEOM::GEOM_Object_var aMainShape, bool only = false)
     {
       SVTK_ViewWindow* aViewWindow  = SMESH::GetViewWindow( SMESHGUI::GetSMESHGUI() );
-      string mainEntry;
+      std::string mainEntry;
       if ( !aMainShape->_is_nil() )
         mainEntry = aMainShape->GetStudyEntry();
       if ( myMainEntry != mainEntry || aViewWindow != myViewWindow ) { // remove actors
@@ -243,7 +243,7 @@ namespace SMESH
     TActorVec                  myActors;
     TActorVec                  myShownActors;
     TopTools_IndexedMapOfShape myIndexToShape;
-    string                     myMainEntry;
+    std::string                myMainEntry;
     SVTK_ViewWindow*           myViewWindow;
     vtkProperty*               myProperty;
     std::set<int>              myBuiltSubs;
@@ -1100,15 +1100,26 @@ void SMESHGUI_ComputeOp::startOperation()
       for ( int row = 0; row < aCompErrors->length(); ++row )
       {
         SMESH::ComputeError & err = aCompErrors[ row ];
-        tbl->item( row, COL_ALGO )->setText( err.algoName.in() );
-        tbl->item( row, COL_ERROR )->setText( SMESH::errorText( err.code, err.comment.in() ));
-        tbl->item( row, COL_SHAPEID )->setText( QString("%1").arg( err.subShapeID ));
 
-        QString text = hasShape ? SMESH::shapeText( err.subShapeID, myMainShape ) : QString("");
-        tbl->item( row, COL_SHAPE )->setText( text );
+       QString text = err.algoName.in();
+       if ( !tbl->item( row, COL_ALGO ) ) tbl->setItem( row, COL_ALGO, new QTableWidgetItem( text ) );
+       else tbl->item( row, COL_ALGO )->setText( text );
+
+       text = SMESH::errorText( err.code, err.comment.in() );
+       if ( !tbl->item( row, COL_ERROR ) ) tbl->setItem( row, COL_ERROR, new QTableWidgetItem( text ) );
+       else tbl->item( row, COL_ERROR )->setText( text );
+
+       text = QString("%1").arg( err.subShapeID );
+       if ( !tbl->item( row, COL_SHAPEID ) ) tbl->setItem( row, COL_SHAPEID, new QTableWidgetItem( text ) );
+       else tbl->item( row, COL_SHAPEID )->setText( text );
+
+        text = hasShape ? SMESH::shapeText( err.subShapeID, myMainShape ) : QString("");
+       if ( !tbl->item( row, COL_SHAPE ) ) tbl->setItem( row, COL_SHAPE, new QTableWidgetItem( text ) );
+       else tbl->item( row, COL_SHAPE )->setText( text );
 
         text = ( !hasShape || SMESH::getSubShapeSO( err.subShapeID, myMainShape )) ? "PUBLISHED" : "";
-        tbl->item( row, COL_PUBLISHED )->setText( text ); // if text=="", "PUBLISH" button enabled
+       if ( !tbl->item( row, COL_PUBLISHED ) ) tbl->setItem( row, COL_PUBLISHED, new QTableWidgetItem( text ) );
+       else tbl->item( row, COL_PUBLISHED )->setText( text ); // if text=="", "PUBLISH" button enabled
 
         //tbl->item( row, COL_ERROR )->setWordWrap( true ); // VSR: TODO ???
         tbl->resizeRowToContents( row );