X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_WidgetPoint2dDistance.h;h=7b350d33edd8623e5e9a265bb1c89fe4d5c1010e;hb=031179ada6681b874314c450eeda806f9f8abd28;hp=9ccf0cb6bdbbb864cc7ca349e0f46a6dcd97c316;hpb=abab0a0689765a60fcec0d7861a3ef7893a685fa;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_WidgetPoint2dDistance.h b/src/PartSet/PartSet_WidgetPoint2dDistance.h index 9ccf0cb6b..7b350d33e 100644 --- a/src/PartSet/PartSet_WidgetPoint2dDistance.h +++ b/src/PartSet/PartSet_WidgetPoint2dDistance.h @@ -13,7 +13,7 @@ #include class GeomAPI_Pnt2d; -class XGUI_Workshop; +class ModuleBase_IWorkshop; class ModuleBase_IViewWindow; class QMouseEvent; @@ -40,55 +40,61 @@ Q_OBJECT public: /// Constructor /// \param theParent the parent object + /// \param theWorkshop a current workshop /// \param theData the widget configuation. The attribute of the model widget is obtained from /// \param theParentId is Id of a parent of the current attribute - PartSet_WidgetPoint2dDistance(QWidget* theParent, const Config_WidgetAPI* theData, - const std::string& theParentId); + PartSet_WidgetPoint2dDistance(QWidget* theParent, ModuleBase_IWorkshop* theWorkshop, + const Config_WidgetAPI* theData, + const std::string& theParentId); virtual ~PartSet_WidgetPoint2dDistance(); - /// The methiod called when widget is activated - virtual void activate(); - /// The methiod called when widget is deactivated virtual void deactivate(); - /// Returns workshop - XGUI_Workshop* workshop() const { return myWorkshop; } - - /// Set workshop - /// \param theWork a pointer to workshop - void setWorkshop(XGUI_Workshop* theWork) { myWorkshop = theWork; } - /// \returns the sketch instance CompositeFeaturePtr sketch() const { return mySketch; } /// Set sketch instance void setSketch(CompositeFeaturePtr theSketch) { mySketch = theSketch; } - protected slots: - /// Process of mouse release - /// \param theWnd a pointer to a window - /// \param theEvent a mouse event - void onMouseRelease(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent); + /// Returns true if the event is processed. + virtual bool processEnter(); +public slots: /// Process of mouse move /// \param theWnd a pointer to a window /// \param theEvent a mouse event void onMouseMove(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent); + protected slots: + /// Process of mouse release + /// \param theWnd a pointer to a window + /// \param theEvent a mouse event + void onMouseRelease(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent); + protected: + /// The methiod called when widget is activated + virtual void activateCustom(); + /// Set the second point which defines a value in the widget as a distance with a first point defined by feature void setPoint(FeaturePtr theFeature, const std::shared_ptr& thePnt); -private slots: - /// Process values changed event - void onValuesChanged(); + /// Compute the distance between points + /// \param theFirstPnt a point value of the out point attribute + /// \param theCurrentPnt a point of the current widget + /// \return a double value + virtual double computeValue(const std::shared_ptr& theFirstPnt, + const std::shared_ptr& theCurrentPnt); - private: - XGUI_Workshop* myWorkshop; +protected: + /// A reference to workshop + ModuleBase_IWorkshop* myWorkshop; + + /// A name of the first point std::string myFirstPntName; + /// Reference to sketch CompositeFeaturePtr mySketch; };