#include <ModelAPI_CompositeFeature.h>
-class PartSet_LockApplyMgr;
class GeomAPI_Pnt2d;
class ModuleBase_IWorkshop;
class ModuleBase_IViewWindow;
/// \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, ModuleBase_IWorkshop* theWorkshop,
- const Config_WidgetAPI* theData,
- const std::string& theParentId);
+ PartSet_WidgetPoint2dDistance(QWidget* theParent, ModuleBase_IWorkshop* theWorkshop,
+ const Config_WidgetAPI* theData);
virtual ~PartSet_WidgetPoint2dDistance();
+ /// Checks if the selection presentation is valid in widget
+ /// \param theValue a selected presentation in the view
+ /// \return a boolean value
+ virtual bool isValidSelectionCustom(const std::shared_ptr<ModuleBase_ViewerPrs>& theValue);
+
/// The methiod called when widget is deactivated
virtual void deactivate();
void setSketch(CompositeFeaturePtr theSketch) { mySketch = theSketch; }
/// Returns true if the event is processed.
- virtual bool isEventProcessed(QKeyEvent* theEvent);
+ virtual bool processEnter();
public slots:
/// Process of mouse move
void onMouseRelease(ModuleBase_IViewWindow* theWnd, QMouseEvent* theEvent);
protected:
+ /// Store current value in cashed value
+ void storeCurentValue();
+
+ /// Restore cashed value in the model attribute
+ /// \return boolean state if the restored feature shoud be hidden
+ bool restoreCurentValue();
+
+ /// Fills the widget with default values
+ /// \return true if the widget current value is reset
+ virtual bool resetCustom();
+
/// The methiod called when widget is activated
virtual void activateCustom();
virtual double computeValue(const std::shared_ptr<GeomAPI_Pnt2d>& theFirstPnt,
const std::shared_ptr<GeomAPI_Pnt2d>& theCurrentPnt);
-private slots:
- /// Process values changed event
- void onValuesChanged();
-
protected:
/// A reference to workshop
ModuleBase_IWorkshop* myWorkshop;
- /// A manager to lock/unlock Apply button in PP
- PartSet_LockApplyMgr* myLockApplyMgr;
-
/// A name of the first point
std::string myFirstPntName;
/// Reference to sketch
CompositeFeaturePtr mySketch;
+
+ bool myValueIsCashed; ///< boolean state if the value is cashed during value state change
+ bool myIsFeatureVisibleInCash; ///< boolean value if the feature was visible when cash if filled
+ double myValueInCash; ///< the cashed X value during value state change
};
#endif