Synchronization of selection from TreeWidget to OCCViewer.

This commit is contained in:
nds 2016-11-08 19:18:47 +03:00
parent 45a135f45f
commit 4e2afd4cf1
2 changed files with 11 additions and 2 deletions

View 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 ) )

View File

@ -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