Salome HOME
Issue #3231: Provide presentation for offset operation
[modules/shaper.git] / src / SketchPlugin / SketchPlugin_Offset.h
index af74b7169659ee2066f4c12c6ed6e902458d1f9d..7ed4e379494fdbe3a0bb66c793f0a7da8d45c202 100644 (file)
 #include <SketchPlugin_SketchEntity.h>
 
 #include <GeomDataAPI_Point2D.h>
+
 #include <GeomAPI_Edge.h>
+#include <GeomAPI_IPresentable.h>
 
 /**\class SketchPlugin_Offset
  * \ingroup Plugins
  * \brief Builds offset curves in the sketch.
  */
-class SketchPlugin_Offset : public SketchPlugin_SketchEntity
+class SketchPlugin_Offset : public SketchPlugin_SketchEntity, public GeomAPI_IPresentable
 {
 public:
   /// Offset macro feature kind
@@ -83,7 +85,7 @@ public:
 
   /// Reimplemented from ModelAPI_Feature::isMacro().
   /// \returns true
-  SKETCHPLUGIN_EXPORT virtual bool isMacro() const { return true; }
+  //SKETCHPLUGIN_EXPORT virtual bool isMacro() const { return false; }
 
   //SKETCHPLUGIN_EXPORT virtual bool isPreviewNeeded() const { return false; }
   SKETCHPLUGIN_EXPORT virtual bool isPreviewNeeded() const { return true; }
@@ -95,6 +97,9 @@ public:
   /// \return \c false in case the action not performed.
   SKETCHPLUGIN_EXPORT virtual bool customAction(const std::string& theActionId);
 
+  /// Returns the AIS preview
+  SKETCHPLUGIN_EXPORT virtual AISObjectPtr getAISObject(AISObjectPtr thePrevious);
+
   /// Use plugin manager for features creation.
   SketchPlugin_Offset();