#include "ModuleBase.h"
#include "ModuleBase_WidgetValidated.h"
#include "ModuleBase_ViewerFilters.h"
+#include <ModuleBase_ViewerPrs.h>
#include <ModelAPI_Object.h>
#include <ModelAPI_Attribute.h>
/// \return a control list
virtual QList<QWidget*> getControls() const;
- /// 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);
+ /// Fills the attribute with the value of the selected owner
+ /// \param theOwner a selected owner
+ virtual bool setSelectionCustom(const ModuleBase_ViewerPrs& thePrs);
/// The methiod called when widget is deactivated
virtual void deactivate();
- // Get the object from the attribute
- /// \param theObj an object
- static ObjectPtr getObject(const AttributePtr& theAttribute);
-
public slots:
/// Activate or deactivate selection
/// Creates a backup of the current values of the attribute
/// It should be realized in the specific widget because of different
/// parameters of the current attribute
- /// \param isBackup a boolean flag, if true, store values from the attribute
- /// to backup, otherwise set the backed up values to the attribute
- virtual void backupAttributeValue(const bool isBackup);
+ virtual void storeAttributeValue();
- /// Fills the attribute with the value of the selected owner
- /// \param theOwner a selected owner
- virtual void setSelection(const Handle_SelectMgr_EntityOwner& theOwner);
+ /// Creates a backup of the current values of the attribute
+ /// It should be realized in the specific widget because of different
+ /// parameters of the current attribute
+ /// \param theValid a boolean flag, if restore happens for valid parameters
+ virtual void restoreAttributeValue(const bool theValid);
/// Computes and updates name of selected object in the widget
void updateSelectionName();
/// \param theShape a shape
virtual bool acceptSubShape(std::shared_ptr<GeomAPI_Shape> theShape) const;
- // Set the given object as a value of the widget
- /// \param theObj an object
- /// \param theShape a shape
- void setObject(ObjectPtr theObj, std::shared_ptr<GeomAPI_Shape> theShape = std::shared_ptr<GeomAPI_Shape>());
-
// Get the shape from the attribute it the attribute contain a shape, e.g. selection attribute
/// \return a shape
GeomShapePtr getShape() const;
- /// Check the selected with validators if installed
- /// \param theObj the object for checking
- /// \param theShape the shape for checking
- virtual bool isValid(ObjectPtr theObj, std::shared_ptr<GeomAPI_Shape> theShape);
-
/// Clear attribute
void clearAttribute();
/// the specific type and set the given values
/// \param theSelectedObject an object
/// \param theShape a selected shape, which is used in the selection attribute
- virtual bool storeAttributeValues(ObjectPtr theSelectedObject, GeomShapePtr theShape) const;
+ /// \return true if it is succeed
+ virtual bool setObject(ObjectPtr theSelectedObject, GeomShapePtr theShape);
//----------- Class members -------------
protected: