X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_WidgetPoint2d.h;h=c85ad2082c2c81906cda79fbe3cdc421c5173b5b;hb=7cb6ac084270943d926ec7ef35bf9e63d6a3eaf5;hp=e39011c9054e32484b65472bdf9bdda846078354;hpb=fc1a9c802c59a0e853dc43125362e513b6f6358f;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_WidgetPoint2d.h b/src/PartSet/PartSet_WidgetPoint2d.h index e39011c90..c85ad2082 100644 --- a/src/PartSet/PartSet_WidgetPoint2d.h +++ b/src/PartSet/PartSet_WidgetPoint2d.h @@ -18,10 +18,11 @@ class ModelAPI_Feature; class ModuleBase_IWorkshop; -class ModuleBase_DoubleSpinBox; +class ModuleBase_ParamSpinBox; class ModuleBase_IViewWindow; class GeomAPI_Pnt2d; -class XGUI_Workshop; +class ModuleBase_IWorkshop; +class PartSet_LockApplyMgr; class QGroupBox; class QMouseEvent; @@ -40,22 +41,24 @@ 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_WidgetPoint2D(QWidget* theParent, const Config_WidgetAPI* theData, + PartSet_WidgetPoint2D(QWidget* theParent, ModuleBase_IWorkshop* theWorkshop, + const Config_WidgetAPI* theData, const std::string& theParentId); /// Destructor virtual ~PartSet_WidgetPoint2D(); /// Fills the widget with default values - virtual void reset(); + virtual bool reset(); /// Set the given wrapped value to the current widget /// This value should be processed in the widget according to the needs - /// \param theValue the wrapped widget value - virtual bool setSelection(ModuleBase_ViewerPrs theValue); - - virtual bool restoreValue(); + /// \param theValues the wrapped widget values + /// \param theToValidate a validation flag + virtual bool setSelection(QList& theValues, + const bool theToValidate); /// Returns list of widget controls /// \return a control list @@ -66,12 +69,6 @@ Q_OBJECT /// The methiod called when widget is deactivated virtual void deactivate(); - /// Return workshop - XGUI_Workshop* workshop() const { return myWorkshop; } - - /// Set workshop - void setWorkshop(XGUI_Workshop* theWork) { myWorkshop = theWork; } - /// \returns the sketch instance CompositeFeaturePtr sketch() const { return mySketch; } @@ -111,9 +108,19 @@ protected: /// \return True in success virtual bool storeValueCustom() const; + virtual bool restoreValueCustom(); + /// The methiod called when widget is activated virtual void activateCustom(); + /// Returns true if the feature contains Point2D attribute with the same coordinates + /// The attribute of the widget is not processed. + /// \param theFeature a feature + /// \param theX the X coordinate + /// \param theY the Y coordinate + /// \return boolean result + bool isFeatureContainsPoint(const FeaturePtr& theFeature, double theX, double theY); + private slots: /// Process value changed event void onValuesChanged(); @@ -127,11 +134,16 @@ private slots: bool getPoint2d(const Handle(V3d_View)& theView, const TopoDS_Shape& theShape, double& theX, double& theY) const; - XGUI_Workshop* myWorkshop; + /// Create a coincidence constraint between the attribute and the parameter object + /// \theObject a result object + void setConstraintWith(const ObjectPtr& theObject); + + ModuleBase_IWorkshop* myWorkshop; + PartSet_LockApplyMgr* myLockApplyMgr; ///< a manager to lock/unlock Apply button in PP QGroupBox* myGroupBox; ///< the parent group box for all intenal widgets - ModuleBase_DoubleSpinBox* myXSpin; ///< the spin box for the X coordinate - ModuleBase_DoubleSpinBox* myYSpin; ///< the spin box for the Y coordinate + ModuleBase_ParamSpinBox* myXSpin; ///< the spin box for the X coordinate + ModuleBase_ParamSpinBox* myYSpin; ///< the spin box for the Y coordinate //std::string myOptionParam; /// Parameter name which has to be taken from previous feature