]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
Synchronization of selection from TreeWidget to OCCViewer.
authornds <natalia.ermolaeva@opencascade.com>
Tue, 8 Nov 2016 16:18:47 +0000 (19:18 +0300)
committernds <natalia.ermolaeva@opencascade.com>
Tue, 8 Nov 2016 16:18:47 +0000 (19:18 +0300)
src/GEOMGUI/GEOMGUI_OCCSelector.cxx
src/OBJECT/GEOM_Annotation.hxx

index b79ea3d350a7f6ea381854b8f6b8b2192c5957d7..4ab85d38aaef72bab3eb7d43aaf3f102085ba833 100644 (file)
@@ -24,6 +24,7 @@
 // Author : Alexander SOLOVYOV, Open CASCADE S.A.S. (alexander.solovyov@opencascade.com)
 //
 #include "GEOMGUI_OCCSelector.h"
+#include "GEOM_Annotation.hxx"
 
 #include <Basics_OCCTVersion.hxx>
 
@@ -300,8 +301,16 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList )
       {
         anOwner = Handle(StdSelect_BRepOwner)::DownCast(owners( i ));
 
-        if ( anOwner.IsNull() || !anOwner->HasShape() )
+        if ( anOwner.IsNull() || !anOwner->HasShape() ) {
+          if ( globalSelMap.contains( entryStr ) ) {
+            Handle(GEOM_Annotation::GEOM_AnnotationOwner) anAnnotationOwner =
+                               Handle(GEOM_Annotation::GEOM_AnnotationOwner)::DownCast(owners( i ));
+            if ( !anAnnotationOwner.IsNull() ) {
+              ownersmap.Add( anAnnotationOwner );
+            }
+          }
           continue;
+        }
 
         // GLOBAL selection
         if ( !anOwner->ComesFromDecomposition() && globalSelMap.contains( entryStr ) )
index 62a8a4dded188a650207efa1a77ff681eba781dc..0fe6b11f5e9f6ea8fd01432003be408a8753cd76 100755 (executable)
@@ -331,7 +331,7 @@ private:
 
   friend class OpenGl_Annotation; // allow opengl element to get private data and invoke callback methods
 
-private:
+public:
 
   //! Custom entity owner implementing correct highlight for topmost mode.
   class GEOM_AnnotationOwner : public SelectMgr_EntityOwner