1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

0025661: Visualization - AIS_InteractiveContext::Load() is not symmetric to the local context method

Register theIObj in the selection manager to prepare further activation of selection
This commit is contained in:
san
2014-12-25 19:13:18 +03:00
parent 36b459e7e8
commit a2ad59f7e2

View File

@@ -558,13 +558,21 @@ void AIS_InteractiveContext::Load (const Handle(AIS_InteractiveObject)& theIObj,
}
if (theSelMode == -1
&& !theToAllowDecomposition
&& !myObjects.IsBound (theIObj))
&& !theToAllowDecomposition)
{
Standard_Integer aDispMode, aHiMod, aSelModeDef;
GetDefModes (theIObj, aDispMode, aHiMod, aSelModeDef);
Handle(AIS_GlobalStatus) aStatus = new AIS_GlobalStatus (AIS_DS_Erased, aDispMode, aSelModeDef);
myObjects.Bind (theIObj, aStatus);
if (!myObjects.IsBound (theIObj))
{
Standard_Integer aDispMode, aHiMod, aSelModeDef;
GetDefModes (theIObj, aDispMode, aHiMod, aSelModeDef);
Handle(AIS_GlobalStatus) aStatus = new AIS_GlobalStatus (AIS_DS_Erased, aDispMode, aSelModeDef);
myObjects.Bind (theIObj, aStatus);
}
// Register theIObj in the selection manager to prepare further activation of selection
if (!mgrSelector->Contains (theIObj))
{
mgrSelector->Load (theIObj);
}
}
}