X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FSketchPlugin_Feature.h;h=db6a6d6607aff088a251a6e4f6e43fb30d71b82e;hb=761f0db64165dd5208998f29db8c7a8ae6c30e60;hp=26efd6e054c4fa6284ba73e02861afd75f7ad2fe;hpb=1a6a9c1c0c466abb867f2c2815b20aa0620a444c;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/SketchPlugin_Feature.h b/src/SketchPlugin/SketchPlugin_Feature.h index 26efd6e05..db6a6d660 100644 --- a/src/SketchPlugin/SketchPlugin_Feature.h +++ b/src/SketchPlugin/SketchPlugin_Feature.h @@ -24,6 +24,14 @@ public: /// \return the built preview SKETCHPLUGIN_EXPORT virtual const boost::shared_ptr& preview() = 0; + /// Adds sub-feature of the higher level feature (sub-element of the sketch) + /// \param theFeature sub-feature + SKETCHPLUGIN_EXPORT virtual const void addSub( + const boost::shared_ptr& theFeature) = 0; + + /// Returns true if this feature must be displayed in the history (top level of Part tree) + SKETCHPLUGIN_EXPORT virtual bool isInHistory() {return false;} + protected: /// Set the shape to the internal preview field /// \param theShape a preview shape @@ -31,9 +39,18 @@ protected: /// Return the shape from the internal preview field /// \return theShape a preview shape const boost::shared_ptr& getPreview() const; + /// Sets the higher-level feature for the sub-feature (sketch for line) + void setSketch(SketchPlugin_Sketch* theSketch) {mySketch = theSketch;} + /// Returns the sketch of this feature + SketchPlugin_Sketch* sketch(); + /// initializes mySketch + SketchPlugin_Feature(); + + friend class SketchPlugin_Sketch; private: boost::shared_ptr myPreview; ///< the preview shape + SketchPlugin_Sketch* mySketch; /// sketch that contains this feature }; #endif