]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
PAL10940 : value of hypothesis isn't shown in object browser
authorasl <asl@opencascade.com>
Thu, 23 Mar 2006 11:07:49 +0000 (11:07 +0000)
committerasl <asl@opencascade.com>
Thu, 23 Mar 2006 11:07:49 +0000 (11:07 +0000)
src/ObjBrowser/OB_Browser.cxx
src/ObjBrowser/OB_Browser.h

index afd74b39acfe65e2f77baecec73fd31c251424d5..6eb296fe5b70b3a4651bcca2a0754f26f5db9a12 100755 (executable)
@@ -124,7 +124,8 @@ bool OB_BrowserSync::needUpdate( const ItemPtr& item ) const
     SUIT_DataObject* obj = item->dataObject();
     if ( obj ) {
       // 1. check text
-      update = ( item->text( 0 ) != obj->name() );
+      update = ( item->text( 0 ) != obj->name() ) || myBrowser->needToUpdateTexts( item );
+
       if ( !update ) { 
        // 2. check pixmap (compare serialNumber()-s)
        QPixmap objPix = obj->icon();
@@ -151,6 +152,7 @@ void OB_BrowserSync::updateItem( const ItemPtr& p ) const
 {
   if ( p && needUpdate( p ) ) { 
     //    printf( "--- needUpdate for %s = true ---\n", p->text( 0 ).latin1() );
+    myBrowser->updateText( p );
     p->update();
   }
 }
@@ -1116,6 +1118,18 @@ void OB_Browser::updateText()
   }
 }
 
+bool OB_Browser::needToUpdateTexts( QListViewItem* item ) const
+{
+  SUIT_DataObject* obj = dataObject( item );
+  if ( !obj )
+    return false;
+
+  for( QMap<int, int>::const_iterator it = myColumnIds.begin(); it != myColumnIds.end(); ++it )
+    if( item->text( it.data() ) != obj->text( it.key() ) )
+      return true;
+  return false;
+}
+
 void OB_Browser::updateText( QListViewItem* item )
 {
   SUIT_DataObject* obj = dataObject( item );
index a6e3cd42113231860df4d79739858decf157a98c..9ee6e6bceb59a4e3eba796293138510bf09db1d2 100755 (executable)
@@ -162,6 +162,7 @@ private:
   void              removeObject( SUIT_DataObject*, const bool = true );
 
   void              updateText( QListViewItem* );
+  bool              needToUpdateTexts( QListViewItem* ) const;
 
   DataObjectKey     objectKey( QListViewItem* ) const;
   DataObjectKey     objectKey( SUIT_DataObject* ) const;