]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
IPAL20771 & IPAL20756
authorrnv <rnv@opencascade.com>
Fri, 12 Dec 2008 13:31:36 +0000 (13:31 +0000)
committerrnv <rnv@opencascade.com>
Fri, 12 Dec 2008 13:31:36 +0000 (13:31 +0000)
src/SalomeApp/SalomeApp_NoteBookDlg.cxx
src/SalomeApp/SalomeApp_NoteBookDlg.h

index dc9ce5587ca1dbcfc98febb04c20fa81c62b15b8..a5c148be811bd834f198100c2cbf957b6ea2f66b 100644 (file)
@@ -200,6 +200,16 @@ QTableWidgetItem* NoteBook_TableRow::GetNameItem()
   return myVariableName;
 }
 
+//============================================================================
+/*! Function : GetHeaderItem
+ *  Purpose  : 
+ */
+//============================================================================
+QTableWidgetItem* NoteBook_TableRow::GetHeaderItem()
+{
+  return myRowHeader;
+}
+
 //============================================================================
 /*! Function : IsRealValue
  *  Purpose  : Return true if theValue string is real value, otherwise return 
@@ -412,6 +422,17 @@ bool NoteBook_Table::IsValid() const
   return true;
 }
 
+//============================================================================
+/*! Function : RenamberRowItems
+ *  Purpose  : renumber row items
+ */
+//============================================================================
+void NoteBook_Table::RenamberRowItems(){
+  for(int i=0; i<myRows.size();i++){
+    myRows[i]->GetHeaderItem()->setText(QString::number(i+1));
+  }
+}
+
 //============================================================================
 /*! Function : AddRow
  *  Purpose  : Add a row into the table
@@ -584,7 +605,7 @@ void NoteBook_Table::RemoveSelected()
     isProcessItemChangedSignal = true;
     return;
   }
-
+  bool removedFromStudy = false;
   for(int i=0; i < aSelectedItems.size(); i++ ) {
     NoteBook_TableRow* aRow = GetRowByItem(aSelectedItems[i]);
     if(aRow) {
@@ -607,15 +628,20 @@ void NoteBook_Table::RemoveSelected()
        }
 
        int index = aRow->GetIndex();
+        QString aVarName = aRow->GetName();
        myRemovedRows.append( index );
        if( myVariableMap.contains( index ) )
          myVariableMap.remove( index );
-
         removeRow(nRow);
         myRows.removeAt(nRow);
+        if(myStudy->IsVariable(aVarName.toLatin1().constData()))
+          removedFromStudy = true;
       }
     }
   }
+  if(removedFromStudy)
+    myIsModified = true;
+  RenamberRowItems();
   isProcessItemChangedSignal = true;
 }
 
index c4a7994af1e3dc7baf9b91415a1f5356bd9f7475..431b50ced7d01ea82acf5cb60927e53d2959871f 100644 (file)
@@ -71,6 +71,7 @@ class SALOMEAPP_EXPORT NoteBook_TableRow : public QWidget
 
   QTableWidgetItem* GetVariableItem();
   QTableWidgetItem* GetNameItem();
+  QTableWidgetItem* GetHeaderItem();
 
   static bool IsRealValue(const QString theValue, double* theResult = 0);
   static bool IsIntegerValue(const QString theValue, int* theResult = 0);
@@ -113,6 +114,7 @@ class SALOMEAPP_EXPORT NoteBook_Table : public QTableWidget
   const QList<int>&  GetRemovedRows() const { return myRemovedRows; }
   const VariableMap& GetVariableMap() const { return myVariableMap; }
   const VariableMap& GetVariableMapRef() const { return myVariableMapRef; }
+  void  RenamberRowItems();
 
   void ResetMaps();