X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FModuleBase%2FModuleBase_ResultPrs.cpp;h=d08ccb44dfa7f6d09443c529ce2bb28014ef1569;hb=d0add0e964478b0c8f08a577ffe3a8dc0a7fd60d;hp=19ceb3e9b7374306d4f57c0cb6f898772d671836;hpb=423c10234142d14d0d5de89383f2f96a4ec5930f;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_ResultPrs.cpp b/src/ModuleBase/ModuleBase_ResultPrs.cpp index 19ceb3e9b..d08ccb44d 100755 --- a/src/ModuleBase/ModuleBase_ResultPrs.cpp +++ b/src/ModuleBase/ModuleBase_ResultPrs.cpp @@ -25,7 +25,7 @@ #include #include #include -#include +#include #include #include #include @@ -33,18 +33,14 @@ #include #include -IMPLEMENT_STANDARD_HANDLE(ModuleBase_BRepOwner, StdSelect_BRepOwner); IMPLEMENT_STANDARD_RTTIEXT(ModuleBase_BRepOwner, StdSelect_BRepOwner); //******************************************************************************************* -IMPLEMENT_STANDARD_HANDLE(ModuleBase_ResultPrs, ViewerData_AISShape); IMPLEMENT_STANDARD_RTTIEXT(ModuleBase_ResultPrs, ViewerData_AISShape); - - ModuleBase_ResultPrs::ModuleBase_ResultPrs(ResultPtr theResult) : ViewerData_AISShape(TopoDS_Shape()), myResult(theResult), myAdditionalSelectionPriority(0) { @@ -182,25 +178,26 @@ void ModuleBase_ResultPrs::HilightSelected(const Handle(PrsMgr_PresentationManag for (int i = 1; i <= theOwners.Length(); i++) { anOwner = theOwners.Value(i); aCompOwner = Handle(ModuleBase_BRepOwner)::DownCast(anOwner); - if (aCompOwner.IsNull()) - anOwner->Hilight(thePM); + if (aCompOwner.IsNull()) { + thePM->Color(anOwner->Selectable(), GetContext()->SelectionStyle()); + } else { TopoDS_Shape aShape = aCompOwner->Shape(); Handle( Prs3d_Presentation ) aSelectionPrs = GetSelectPresentation( thePM ); aSelectionPrs->Clear(); - StdPrs_WFDeflectionShape::Add(aSelectionPrs, aShape, myDrawer); + StdPrs_WFShape::Add(aSelectionPrs, aShape, myDrawer); aSelectionPrs->SetDisplayPriority(9); - aSelectionPrs->Highlight(Aspect_TOHM_COLOR, aSelectionPrs->HighlightColor()); + aSelectionPrs->Highlight(GetContext()->SelectionStyle()); aSelectionPrs->Display(); - thePM->Highlight(this); + thePM->Color(this, GetContext()->SelectionStyle()); } } } void ModuleBase_ResultPrs::HilightOwnerWithColor(const Handle(PrsMgr_PresentationManager3d)& thePM, - const Quantity_NameOfColor theColor, + const Handle(Graphic3d_HighlightStyle)& theStyle, const Handle(SelectMgr_EntityOwner)& theOwner) { Handle(StdSelect_BRepOwner) aOwner = Handle(StdSelect_BRepOwner)::DownCast(theOwner); @@ -209,13 +206,13 @@ void ModuleBase_ResultPrs::HilightOwnerWithColor(const Handle(PrsMgr_Presentatio TopoDS_Shape aShape = aOwner->Shape(); if (!aShape.IsNull()) { - thePM->Color(this, theColor); + thePM->Color(this, theStyle); Handle( Prs3d_Presentation ) aHilightPrs = GetHilightPresentation( thePM ); aHilightPrs->Clear(); - StdPrs_WFDeflectionShape::Add(aHilightPrs, aShape, myDrawer); - aHilightPrs->Highlight(Aspect_TOHM_COLOR, theColor); + StdPrs_WFShape::Add(aHilightPrs, aShape, myDrawer); + aHilightPrs->Highlight(theStyle); if (thePM->IsImmediateModeOn()) thePM->AddToImmediateList(aHilightPrs);