1 // File: PartSet_OperationSketchBase.h
2 // Created: 20 Apr 2014
3 // Author: Natalia ERMOLAEVA
5 #ifndef PartSet_OperationSketchBase_H
6 #define PartSet_OperationSketchBase_H
10 #include <TopoDS_Shape.hxx>
11 #include <NCollection_List.hxx>
13 #include <ModuleBase_PropPanelOperation.h>
19 \class PartSet_OperationSketchBase
20 * \brief The base operation for the sketch features.
21 * Base class for all sketch operations. It provides an access to the feature preview
23 class PARTSET_EXPORT PartSet_OperationSketchBase : public ModuleBase_PropPanelOperation
28 /// \param theId an feature index
29 /// \param theParent the object parent
30 PartSet_OperationSketchBase(const QString& theId, QObject* theParent);
32 virtual ~PartSet_OperationSketchBase();
34 /// Returns the feature preview shape
35 boost::shared_ptr<GeomAPI_Shape> preview() const;
37 /// Returns the operation local selection mode
38 /// \return the selection mode
39 virtual int getSelectionMode() const = 0;
41 /// Gives the current selected objects to be processed by the operation
42 /// \param a list of interactive selected objects
43 virtual void setSelectedShapes(const NCollection_List<TopoDS_Shape>& theList) = 0;
46 void viewerProjectionChange(double theX, double theY, double theZ);