Salome HOME
Fix for bug PAL19432 (Qt4 porting: Application crash at Add button push (Set Filters...
authormzn <mzn@opencascade.com>
Tue, 8 Apr 2008 15:22:29 +0000 (15:22 +0000)
committermzn <mzn@opencascade.com>
Tue, 8 Apr 2008 15:22:29 +0000 (15:22 +0000)
src/SMESHGUI/SMESHGUI_FilterDlg.cxx

index 1bb4e6184b43cd2a6080593a1cd7261ef0b592d6..216edb91f432ef1cace41a95713e73c879692bce 100755 (executable)
@@ -548,10 +548,15 @@ void SMESHGUI_FilterTable::Table::setEditable (bool isEditable,
 {
   QTableWidgetItem* anItem = item( row, col );
   if ( anItem ) {
 {
   QTableWidgetItem* anItem = item( row, col );
   if ( anItem ) {
+    bool isSignalsBlocked = signalsBlocked();
+    blockSignals( true );
+
     Qt::ItemFlags f = anItem->flags();
     if ( !isEditable ) f = f & ~Qt::ItemIsEditable;
     else f = f | Qt::ItemIsEditable;
     anItem->setFlags( f );
     Qt::ItemFlags f = anItem->flags();
     if ( !isEditable ) f = f & ~Qt::ItemIsEditable;
     else f = f | Qt::ItemIsEditable;
     anItem->setFlags( f );
+    
+    blockSignals( isSignalsBlocked );
   }
 }
 
   }
 }
 
@@ -1402,7 +1407,7 @@ void SMESHGUI_FilterTable::addRow (Table* theTable, const int theType, const boo
   }
 
   theTable->setEditable(false, theTable->rowCount() - 1, 4);
   }
 
   theTable->setEditable(false, theTable->rowCount() - 1, 4);
-
+  
   if (aCurrRow >=0 && aCurrRow < theTable->rowCount() &&
        aCurrCol >=0 && aCurrCol < theTable->rowCount())
   theTable->setCurrentCell(aCurrRow, aCurrCol);
   if (aCurrRow >=0 && aCurrRow < theTable->rowCount() &&
        aCurrCol >=0 && aCurrCol < theTable->rowCount())
   theTable->setCurrentCell(aCurrRow, aCurrCol);