Salome HOME
Fix for the issue #593: do not remove naming attribute, but use TNaming_Builder for...
[modules/shaper.git] / src / PartSet / PartSet_WidgetPoint2d.h
index a4e7323856d38073c4390954c4d8b7f8cb8f92e6..75c617ca005707440afaf5db41e213704327dc90 100644 (file)
@@ -18,7 +18,7 @@
 
 class ModelAPI_Feature;
 class ModuleBase_IWorkshop;
-class ModuleBase_DoubleSpinBox;
+class ModuleBase_ParamSpinBox;
 class ModuleBase_IViewWindow;
 class GeomAPI_Pnt2d;
 class XGUI_Workshop;
@@ -47,17 +47,16 @@ Q_OBJECT
   /// Destructor
   virtual ~PartSet_WidgetPoint2D();
 
+  /// Fills the widget with default values
+  virtual void 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 setSelection(const QList<ModuleBase_ViewerPrs>& theValues, int& thePosition);
 
   virtual bool restoreValue();
 
-  /// Returns the internal parent wiget control, that can be shown anywhere
-  /// \returns the widget
-  QWidget* getControl() const;
-
   /// Returns list of widget controls
   /// \return a control list
   virtual QList<QWidget*> getControls() const;
@@ -95,21 +94,28 @@ signals:
   /// Signal about selection of an existing vertex from an object
   void vertexSelected();
 
+public slots:
+  /// Process mouse move event
+  /// \param theWnd a view window
+  /// \param theEvent a mouse event
+  void onMouseMove(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent);
+
 protected slots:
   /// Process mouse release event
   /// \param theWnd a view window
   /// \param theEvent a mouse event
   void onMouseRelease(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent);
 
-  /// Process mouse move event
-  /// \param theWnd a view window
-  /// \param theEvent a mouse event
-  void onMouseMove(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent);
+  // Set lock validating in the operation manager. Set apply is disabled
+  void onLockValidating();
+
+  // Set unlock validating in the operation manager. Call method to update the apply state.
+  void onUnlockValidating();
 
 protected:
   /// Saves the internal parameters to the given feature
   /// \return True in success
-  virtual bool storeValue() const;
+  virtual bool storeValueCustom() const;
 
   /// The methiod called when widget is activated
   virtual void activateCustom();
@@ -130,8 +136,8 @@ private slots:
   XGUI_Workshop* myWorkshop;
 
   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