Salome HOME
Issue #1011 In sketch edition, the cross cursor must be displayed only in the 3D...
[modules/shaper.git] / src / PartSet / PartSet_OperationPrs.h
index ea645140ce9f0f9810db282dd36088ffb186010e..64d92151ad5dfaebb3b741135ecb344d6aba6fc8 100755 (executable)
@@ -11,6 +11,7 @@
 
 #include <ModelAPI_Object.h>
 #include <ModelAPI_Feature.h>
+#include <ModelAPI_Result.h>
 #include <ModelAPI_Attribute.h>
 
 #include <ModuleBase_IWorkshop.h>
 #include <ViewerData_AISShape.hxx>
 #include <Standard_DefineHandle.hxx>
 
+#include <Quantity_Color.hxx>
+
 #include <QMap>
 #include <QList>
 
+#include <list>
+
 DEFINE_STANDARD_HANDLE(PartSet_OperationPrs, ViewerData_AISShape)
 
 class XGUI_Workshop;
@@ -52,11 +57,14 @@ public:
   void setFeature(const FeaturePtr& theFeature);
 
   /// Returns true if the presentation 
-  bool dependOn(const ObjectPtr& theObject);
+  //bool dependOn(const ObjectPtr& theObject);
 
   // Recompute internal list of shaped dependent on the current feature
   void updateShapes();
 
+  /// Returns true if the feature contains shapes or results
+  bool hasShapes();
+
   DEFINE_STANDARD_RTTI(PartSet_OperationPrs)
 
 protected:
@@ -93,7 +101,11 @@ private:
 private:
   ModuleBase_IWorkshop* myWorkshop;
   FeaturePtr myFeature; /// Reference to a feature object
-  QMap<ObjectPtr, QList<GeomShapePtr> > myFeatureShapes;
+  QMap<ObjectPtr, QList<GeomShapePtr> > myFeatureShapes; /// visualized shapes
+  std::list<ResultPtr> myFeatureResults; /// visualized feature results
+
+  Quantity_Color myShapeColor; /// color of feature depended shapes
+  Quantity_Color myResultColor; /// color of feature result
 };