Salome HOME
Result attributes validators created
[modules/shaper.git] / src / ModuleBase / ModuleBase_WidgetPoint2dDistance.h
1 // File:        ModuleBase_WidgetPoint2dDistance.h
2 // Created:     23 June 2014
3 // Author:      Vitaly Smetannikov
4
5
6 #ifndef ModuleBase_WidgetPoint2dDistance_H
7 #define ModuleBase_WidgetPoint2dDistance_H
8
9 #include "ModuleBase.h"
10 #include "ModuleBase_WidgetDoubleValue.h"
11
12 class ModuleBase_WidgetValue;
13 class GeomAPI_Pnt2d;
14
15 class MODULEBASE_EXPORT ModuleBase_WidgetPoint2dDistance: public ModuleBase_WidgetDoubleValue
16 {
17   Q_OBJECT
18 public:
19   /// Constructor
20   /// \theParent the parent object
21   /// \theData the widget configuation. The attribute of the model widget is obtained from
22   ModuleBase_WidgetPoint2dDistance(QWidget* theParent, const Config_WidgetAPI* theData, const std::string& theParentId);
23
24   virtual ~ModuleBase_WidgetPoint2dDistance();
25
26   /// Set the given wrapped value to the current widget
27   /// This value should be processed in the widget according to the needs
28   /// \param theValue the wrapped widget value
29   virtual bool setValue(ModuleBase_WidgetValue* theValue);
30
31 protected:
32   /// Set the second point which defines a value in the widget as a distance with a first point defined by feature
33   void setPoint(FeaturePtr theFeature, const boost::shared_ptr<GeomAPI_Pnt2d>& thePnt);
34
35 private:
36   std::string myFirstPntName;
37 };
38
39
40 #endif