]> SALOME platform Git repositories - modules/gui.git/commitdiff
Salome HOME
Appends flag in the method setAutoUpdate() to give an opportunity to put off update...
authornds <nds@opencascade.com>
Wed, 17 Sep 2008 06:25:43 +0000 (06:25 +0000)
committernds <nds@opencascade.com>
Wed, 17 Sep 2008 06:25:43 +0000 (06:25 +0000)
src/SUIT/SUIT_DataBrowser.cxx
src/SUIT/SUIT_DataBrowser.h
src/SUIT/SUIT_TreeModel.cxx
src/SUIT/SUIT_TreeModel.h

index 32c92c013b89c49db58eff8d04ca94375a2f02da..9dd97b1fe7fc93e1d27ac5ba745cda11383151b9 100644 (file)
@@ -107,13 +107,15 @@ bool SUIT_DataBrowser::autoUpdate() const
   automatically when data tree is changed.
 
   \param on 'auto-update tree' flag value
+  \param updateImmediately  if \c true, the tree is updated immediately;
+  otherwise the tree must be updated manually
   \sa autoUpdate(), updateTree()
 */
-void SUIT_DataBrowser::setAutoUpdate( const bool on )
+void SUIT_DataBrowser::setAutoUpdate( const bool on, const bool updateImmediately )
 {
   SUIT_ProxyModel* m = qobject_cast<SUIT_ProxyModel*>( model() );
   if ( m ) 
-    m->setAutoUpdate( on );
+    m->setAutoUpdate( on, updateImmediately );
 }
 
 /*!
index 25794a685360789595480c64dc165728aead7aa4..6cb2b00d4610af59a9cdab6daa9f8fe500cb7d73 100644 (file)
@@ -45,7 +45,7 @@ public:
   void             setRoot( SUIT_DataObject* );
 
   bool             autoUpdate() const;
-  void             setAutoUpdate( const bool );
+  void             setAutoUpdate( const bool, const bool = true );
 
   void             updateTree( SUIT_DataObject* = 0, const bool = true );
 
index 48f486896c0f87b0dbe6aa23b76c5793eb4c08cd..b2c1e880a24928579b958cd610ab63adbb6c65b4 100755 (executable)
@@ -819,9 +819,11 @@ bool SUIT_TreeModel::autoUpdate() const
   automatically when data tree is changed.
 
   \param on 'auto-update tree' flag value
+  \param updateImmediately  if \c true, the tree is updated immediately;
+  otherwise the tree must be updated manually
   \sa autoUpdate(), updateTree()
 */
-void SUIT_TreeModel::setAutoUpdate( const bool on )
+void SUIT_TreeModel::setAutoUpdate( const bool on, const bool updateImmediately )
 {
   if ( myAutoUpdate == on )
     return;
@@ -838,7 +840,8 @@ void SUIT_TreeModel::setAutoUpdate( const bool on )
     SUIT_DataObject::connect( SIGNAL( removed( SUIT_DataObject*, SUIT_DataObject* ) ),
                              this, SLOT( onRemoved( SUIT_DataObject*, SUIT_DataObject* ) ) );
 
-    updateTree();
+    if ( updateImmediately )
+      updateTree();
   }
 }
 
@@ -1235,12 +1238,14 @@ bool SUIT_ProxyModel::autoUpdate() const
   automatically when data tree is changed.
 
   \param on 'auto-update tree' flag value
+  \param updateImmediately  if \c true, the tree is updated immediately;
+  otherwise the tree must be updated manually
   \sa autoUpdate(), updateTree()
 */
-void SUIT_ProxyModel::setAutoUpdate( const bool on )
+void SUIT_ProxyModel::setAutoUpdate( const bool on, const bool updateImmediately )
 {
   if ( treeModel() )
-    treeModel()->setAutoUpdate( on );
+    treeModel()->setAutoUpdate( on, updateImmediately );
 }
 
 /*!
index 89ca777e26c7ac4f6bb6d65c4cb1313fc4f3e091..e5ad92517fd4935fbd178e190845e5496e572195 100755 (executable)
@@ -97,7 +97,7 @@ public:
   void                   setAutoDeleteTree( const bool );
 
   bool                   autoUpdate() const;
-  void                   setAutoUpdate( const bool );
+  void                   setAutoUpdate( const bool, const bool = true );
 
   virtual bool           customSorting( const int ) const;
   virtual bool           lessThan( const QModelIndex& left, const QModelIndex& right ) const;
@@ -158,7 +158,7 @@ public:
   void                   setAutoDeleteTree( const bool );
 
   bool                   autoUpdate() const;
-  void                   setAutoUpdate( const bool );
+  void                   setAutoUpdate( const bool, const bool = true );
  
   bool                   isSortingEnabled() const;