Salome HOME
Optimize the flushing: this improvement speed ups the unit test for 3-4 times
[modules/shaper.git] / src / PartSet / PartSet_WidgetPoint2d.h
index 77ead09c2e9f8809fd753aa40cc2c5d1645ac8be..c85ad2082c2c81906cda79fbe3cdc421c5173b5b 100644 (file)
@@ -56,9 +56,9 @@ Q_OBJECT
   /// Set the given wrapped value to the current widget
   /// This value should be processed in the widget according to the needs
   /// \param theValues the wrapped widget values
-  virtual bool setSelection(QList<ModuleBase_ViewerPrs>& theValues);
-
-  virtual bool restoreValue();
+  /// \param theToValidate a validation flag
+  virtual bool setSelection(QList<ModuleBase_ViewerPrs>& theValues,
+                            const bool theToValidate);
 
   /// Returns list of widget controls
   /// \return a control list
@@ -108,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();
@@ -124,6 +134,10 @@ private slots:
    bool getPoint2d(const Handle(V3d_View)& theView, const TopoDS_Shape& theShape, 
                    double& theX, double& theY) const;
 
+   /// 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