X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_OperationFeatureEditMulti.h;h=5b50a7bd6aa61956b6ad43a641b18219ba3c26b1;hb=5b841e9801c659d762d708378df8c4d85565fda0;hp=0f21f34ab0dd099c7b432dde41526778fc3919b8;hpb=dbe90044b0b96aa64dfe6609083413da2bdf08ec;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_OperationFeatureEditMulti.h b/src/PartSet/PartSet_OperationFeatureEditMulti.h index 0f21f34ab..5b50a7bd6 100644 --- a/src/PartSet/PartSet_OperationFeatureEditMulti.h +++ b/src/PartSet/PartSet_OperationFeatureEditMulti.h @@ -9,6 +9,10 @@ #include #include +#include + +#include +#include class QMouseEvent; @@ -66,43 +70,41 @@ Q_OBJECT /// \param theParent the operation parent /// \param theFeature the parent feature PartSet_OperationFeatureEditMulti(const QString& theId, QObject* theParent, - FeaturePtr theFeature); + CompositeFeaturePtr theFeature); /// Destructor virtual ~PartSet_OperationFeatureEditMulti(); - /// Initializes the operation with previously created feature. It is used in sequental operations - virtual void initFeature(FeaturePtr theFeature); - /// Initialisation of operation with preliminary selection /// \param theSelected the list of selected presentations /// \param theHighlighted the list of highlighted presentations - virtual void initSelection(const std::list& theSelected, - const std::list& theHighlighted); + /// \param theViewer a viewer to have the viewer the eye position + virtual void initSelection(ModuleBase_ISelection* theSelection, + ModuleBase_IViewer* theViewer); /// Returns the operation sketch feature /// \returns the sketch instance - virtual FeaturePtr sketch() const; + virtual CompositeFeaturePtr sketch() const; /// Processes the mouse pressed in the point /// \param theEvent the mouse event /// \param theView a viewer to have the viewer the eye position /// \param theSelected the list of selected presentations /// \param theHighlighted the list of highlighted presentations - virtual void mousePressed(QMouseEvent* theEvent, Handle_V3d_View theView, - const std::list& theSelected, - const std::list& theHighlighted); + //virtual void mousePressed(QMouseEvent* theEvent, ModuleBase_IViewer* theViewer, ModuleBase_ISelection* theSelection); + /// Gives the current mouse point in the viewer /// \param theEvent the mouse event /// \param theView a viewer to have the viewer the eye position - virtual void mouseMoved(QMouseEvent* theEvent, Handle_V3d_View theView); + virtual void mouseMoved(QMouseEvent* theEvent, ModuleBase_IViewer* theViewer); + /// Gives the current selected objects to be processed by the operation /// \param thePoint a point clicked in the viewer /// \param theEvent the mouse event /// \param theSelected the list of selected presentations /// \param theHighlighted the list of highlighted presentations - virtual void mouseReleased(QMouseEvent* theEvent, Handle_V3d_View theView, - const std::list& theSelected, - const std::list& theHighlighted); + virtual void mouseReleased(QMouseEvent* theEvent, ModuleBase_IViewer* theViewer, + ModuleBase_ISelection* theSelection); + protected: /// \brief Virtual method called when operation is started /// Virtual method called when operation started (see start() method for more description) @@ -119,14 +121,16 @@ Q_OBJECT /// the internal operation features are to be selected /// \param isBlocked the state whether the operation is blocked or unblocked /// \param isRestoreSelection the state whether the selected objects should be reselected - void blockSelection(bool isBlocked, const bool isRestoreSelection = true); + //void blockSelection(bool isBlocked, const bool isRestoreSelection = true); /// Sends the features void sendFeatures(); - private: - FeaturePtr mySketch; ///< the sketch feature - std::list myFeatures; ///< the features to apply the edit operation +private: + // the next map should be removed when selection is processed in the move function + std::map > myFeature2Attribute; /// a map of a feature to attributes + + CompositeFeaturePtr mySketch; ///< the sketch feature Point myCurPoint; ///< the current 3D point clicked or moved bool myIsBlockedSelection; ///< the state of the last state of selection blocked signal };