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

@@ -1730,6 +1730,22 @@ protected:
return myDefaultDrawer->DisplayMode();
}
//! Removes dynamic highlight draw
void clearDynamicHighlight() const
{
if (myLastinMain.IsNull())
return;
if (myLastinMain->IsAutoHilight())
{
myMainPM->ClearImmediateDraw();
}
else
{
myLastinMain->Selectable()->ClearDynamicHighlight (myMainPM);
}
}
protected:
AIS_DataMapOfIOStatus myObjects;