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

0028047: Visualization - support objects with customized highlighting in AIS_InteractiveContext

- SelectMgr_SelectableObject::ClearHighlighted method is added to remove dynamic highlight data;
- interactive context will pass processing of dynamic highlight erase to the object if the owner returns false in SelectMgr_EntityOwner::IsAutoHilight;
- if owner returns true in SelectMgr_EntityOwner::IsForcedHilight, selection presentation will be re-highlighted at each ::Select call;
- redundant logic related to old object-oriented highlight mechanism was removed from AIS_InteractiveContext::MoveTo.
This commit is contained in:
vpa
2016-12-28 15:52:31 +03:00
committed by apn
parent a8232603a0
commit 731c9b5bc0
5 changed files with 45 additions and 34 deletions

View File

@@ -2353,7 +2353,7 @@ void AIS_InteractiveContext::EraseGlobal (const Handle(AIS_InteractiveObject)& t
if (!myLastPicked.IsNull()
&& myLastPicked->IsSameSelectable (theIObj))
{
myMainPM->ClearImmediateDraw();
clearDynamicHighlight();
}
if (IsSelected (theIObj)
@@ -2447,8 +2447,8 @@ void AIS_InteractiveContext::ClearGlobal (const Handle(AIS_InteractiveObject)& t
if (myLastinMain->IsSameSelectable (theIObj)
|| myLastPicked->IsSameSelectable(theIObj))
{
clearDynamicHighlight();
myLastinMain.Nullify();
myMainPM->ClearImmediateDraw();
}
}