0028323: Documentation - explain highlighting logic of AIS_InteractiveObject in the...
authorkgv <kgv@opencascade.com>
Wed, 16 Aug 2017 11:06:29 +0000 (14:06 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 17 Aug 2017 12:48:04 +0000 (15:48 +0300)
dox/dev_guides/upgrade/upgrade.md
src/PrsMgr/PrsMgr_PresentableObject.hxx

index 320059c..cfdbc9f 100644 (file)
@@ -1195,6 +1195,9 @@ Management of highlight attributes has been revised and might require modificati
   it is now possible to customize default highlight attributes like *Display Mode* and *ZLayer*, which previously could be defined only on Object level.
 * Properties *Prs3d_Drawer::HighlightStyle()* and *Prs3d_Drawer::SelectionStyle()* have been removed.
   Instead, *AIS_InteractiveObject* now defines *DynamicHilightAttributes()* for dynamic highlighting in addition to *HilightAttributes()* used for highlighting in selected state.
+  Note that *AIS_InteractiveObject::HilightAttributes()* and *AIS_InteractiveObject::DynamicHilightAttributes()* override highlighting properties for both - entire object and for part coming from decomposition.
+  This includes Z-layer settings, which will be the same when overriding properties through AIS_InteractiveObject, while *AIS_InteractiveContext::HighlightStyle()* allows customizing properties for local and global selection independently
+  (with Graphic3d_ZLayerId_Top used for dynamic highlighting of entire object and Graphic3d_ZLayerId_Topmost for dynamic highlighting of object part by default).
 * The following protected fields have been removed from class *AIS_InteractiveObject*:
   - *myOwnColor*, replaced by *myDrawer->Color()*
   - *myTransparency*, replaced by *myDrawer->Transparency()*
index 89134b8..d89f008 100644 (file)
@@ -223,12 +223,14 @@ public:
   Standard_EXPORT virtual void UnsetAttributes();
 
   //! Returns the hilight attributes settings.
+  //! When not NULL, overrides both Prs3d_TypeOfHighlight_LocalSelected and Prs3d_TypeOfHighlight_Selected defined within AIS_InteractiveContext.
   const Handle(Prs3d_Drawer)& HilightAttributes() const { return myHilightDrawer; }
 
   //! Initializes the hilight drawing tool theDrawer.
   virtual void SetHilightAttributes(const Handle(Prs3d_Drawer)& theDrawer) { myHilightDrawer = theDrawer; }
 
   //! Returns the hilight attributes settings.
+  //! When not NULL, overrides both Prs3d_TypeOfHighlight_LocalDynamic and Prs3d_TypeOfHighlight_Dynamic defined within AIS_InteractiveContext.
   const Handle(Prs3d_Drawer)& DynamicHilightAttributes() const { return myDynHilightDrawer; }
 
   //! Initializes the dynamic hilight drawing tool.