mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2025-04-24 22:32:03 +05:00
Bug 19000: problem with local selection on multiple shapes.
This commit is contained in:
parent
f22d540e00
commit
d6ad74214c
@ -100,6 +100,7 @@ void GEOMGUI_OCCSelector::getSelection( SUIT_DataOwnerPtrList& aList ) const
|
|||||||
if (!bigShape.IsEqual(curBigShape))
|
if (!bigShape.IsEqual(curBigShape))
|
||||||
{
|
{
|
||||||
curBigShape = bigShape;
|
curBigShape = bigShape;
|
||||||
|
subShapes.Clear();
|
||||||
TopExp::MapShapes(bigShape, subShapes);
|
TopExp::MapShapes(bigShape, subShapes);
|
||||||
}
|
}
|
||||||
index = subShapes.FindIndex(subShape);
|
index = subShapes.FindIndex(subShape);
|
||||||
@ -213,7 +214,7 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList )
|
|||||||
#ifndef WNT
|
#ifndef WNT
|
||||||
if ( indexesMap.IsBound( TCollection_AsciiString((char*)entry.latin1())))
|
if ( indexesMap.IsBound( TCollection_AsciiString((char*)entry.latin1())))
|
||||||
#else
|
#else
|
||||||
if ( indexesMap.IsBound( (char*)entry.latin1()))
|
if ( indexesMap.IsBound( (char*)entry.latin1()))
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
TColStd_IndexedMapOfInteger& subIndexes = indexesMap.ChangeFind((char*)entry.latin1());
|
TColStd_IndexedMapOfInteger& subIndexes = indexesMap.ChangeFind((char*)entry.latin1());
|
||||||
@ -242,7 +243,7 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList )
|
|||||||
}
|
}
|
||||||
|
|
||||||
// get all owners. Fill "entry - list_of_owners" map.
|
// get all owners. Fill "entry - list_of_owners" map.
|
||||||
for ( AIS_ListIteratorOfListOfInteractive it( aDispList ); it.More(); it.Next() )
|
for (AIS_ListIteratorOfListOfInteractive it (aDispList); it.More(); it.Next())
|
||||||
{
|
{
|
||||||
Handle(AIS_InteractiveObject) io = it.Value();
|
Handle(AIS_InteractiveObject) io = it.Value();
|
||||||
QString entryStr = entry( io );
|
QString entryStr = entry( io );
|
||||||
@ -272,6 +273,7 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList )
|
|||||||
{
|
{
|
||||||
isLocal = true;
|
isLocal = true;
|
||||||
TopoDS_Shape shape = aisShape->Shape();
|
TopoDS_Shape shape = aisShape->Shape();
|
||||||
|
aMapOfShapes.Clear();
|
||||||
TopExp::MapShapes(shape, aMapOfShapes);
|
TopExp::MapShapes(shape, aMapOfShapes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user