Salome HOME
*** empty log message ***
authorasl <asl@opencascade.com>
Wed, 1 Jun 2005 06:52:15 +0000 (06:52 +0000)
committerasl <asl@opencascade.com>
Wed, 1 Jun 2005 06:52:15 +0000 (06:52 +0000)
src/SUIT/SUIT_SelectionMgr.cxx
src/SUIT/SUIT_SelectionMgr.h

index 974da5cb0798e58c57787a5cfba1d13566595330..1089fb81a358cb78c824c79aaaafba9f5e162307 100755 (executable)
@@ -203,10 +203,19 @@ bool SUIT_SelectionMgr::hasFilter( SUIT_SelectionFilter* f ) const
   return myFilters.contains( f );
 }
 
-void SUIT_SelectionMgr::installFilter( SUIT_SelectionFilter* f )
+void SUIT_SelectionMgr::installFilter( SUIT_SelectionFilter* f, const bool updateSelection )
 {
   if ( !hasFilter( f ) )
+  {
+    SUIT_DataOwnerPtrList selOwners;
+    if( updateSelection )
+      selected( selOwners );
+      
     myFilters.append( f );
+    
+    if( updateSelection )
+      setSelected( selOwners );
+  }
 }
 
 void SUIT_SelectionMgr::removeFilter( SUIT_SelectionFilter* f )
index 57e6c134dfc0c9b7bd5005fa3b91c55295770d35..5f172c52e21129dfe9798d8b126949807f64eb55 100755 (executable)
@@ -49,7 +49,7 @@ public:
 
   bool            hasFilter( SUIT_SelectionFilter* ) const;
 
-  virtual void    installFilter( SUIT_SelectionFilter* );
+  virtual void    installFilter( SUIT_SelectionFilter*, const bool = true );
   virtual void    removeFilter( SUIT_SelectionFilter* );
   virtual void    clearFilters();