#include <ModuleBase_Definitions.h>
#include <ModuleBase_ViewerPrs.h>
+#include <ModuleBase_FilterValidated.h>
+
+#include <GeomAPI_ICustomPrs.h>
#include <SelectMgr_AndFilter.hxx>
/// Opens local context. Does nothing if it is already opened.
void openLocalContext();
+ /** Update the object presentable properties such as color, lines width and other
+ * If the object is result with the color attribute value set, it is used,
+ * otherwise the customize is applyed to the object's feature if it is a custom prs
+ * \param theObject an object instance
+ * \return the true state if there is changes and the presentation is customized
+ */
+ bool customizeObject(ObjectPtr theObject);
+
protected:
/// Reference to workshop
XGUI_Workshop* myWorkshop;
/// A container for selection filters
Handle(SelectMgr_AndFilter) myAndFilter;
+ Handle(ModuleBase_FilterValidated) myFilterValidated;
+
+ /// A default custom presentation, which is used if the displayed feature is not a custom presentation
+ GeomCustomPrsPtr myCustomPrs;
+
/// Definition of a type of map which defines correspondance between objects and presentations
typedef QMap<ObjectPtr, AISObjectPtr> ResultToAISMap;