Salome HOME
registerNotObligatory is not necessary if this property is set in XML.
[modules/shaper.git] / src / ModuleBase / ModuleBase_WidgetSelector.h
index 99af3ad74a5ccbc06ad14dc4e623734e4b322005..58cb33062030fe26c3bb28a875a1b0df5ecc4c53 100755 (executable)
@@ -13,6 +13,7 @@
 #include "ModuleBase_Definitions.h"
 
 #include <ModelAPI_Object.h>
+#include <ModelAPI_Attribute.h>
 #include <GeomAPI_Shape.h>
 
 class Config_WidgetAPI;
@@ -42,22 +43,21 @@ Q_OBJECT
   /// Defines if it is supposed that the widget should interact with the viewer.
   virtual bool isViewerSelector() { return true; }
 
+  /// Activate or deactivate selection and selection filters
+  virtual void activateSelectionAndFilters(bool toActivate);
+
   /// Checks the widget validity. By default, it returns true.
-  /// \param theValue a selected presentation in the view
+  /// \param thePrs a selected presentation in the view
   /// \return a boolean value
   virtual bool isValidSelectionCustom(const ModuleBase_ViewerPrs& thePrs);
 
   /// Fills the attribute with the value of the selected owner
-  /// \param theOwner a selected owner
+  /// \param thePrs a selected owner
   virtual bool setSelectionCustom(const ModuleBase_ViewerPrs& thePrs);
 
   /// The methiod called when widget is deactivated
   virtual void deactivate();
 
-protected:
-  /// Activate or deactivate selection
-  void activateSelection(bool toActivate);
-
  private slots:
    /// Slot which is called on selection event
   void onSelectionChanged();
@@ -66,7 +66,7 @@ protected:
   /// Set an empty value to attribute
   virtual void clearAttribute() = 0;
 
-  // Update focus after the attribute value change
+  /// Update focus after the attribute value change
   virtual void updateFocus() = 0;
 
   /// Return the attribute values wrapped in a list of viewer presentations
@@ -88,7 +88,7 @@ protected:
   /// \return true if it is succeed
   virtual void setObject(ObjectPtr theSelectedObject, GeomShapePtr theShape) = 0;
 
-   /// The methiod called when widget is activated
+  /// The methiod called when widget is activated
   virtual void activateCustom();
 
   /// Returns true if selected shape corresponds to requested shape types.
@@ -108,6 +108,11 @@ protected:
                                 GeomShapePtr& theShape);
 
   //----------- Class members -------------
+  /// Returns a name in the next form: attribute_feature_name/attribute_id
+  /// \param theAttribute a model attribute
+  /// \return string value
+  static std::string generateName(const AttributePtr& theAttribite,
+                                  ModuleBase_IWorkshop* theWorkshop);
 };
 
 #endif