Salome HOME
Issue #355 Delete: elements of sketch and constraints
[modules/shaper.git] / src / ModuleBase / ModuleBase_FilterLinearEdge.h
index 7f3b798f8b642383ed2a5769a99698da89baeb7b..0efb1a545af9e97ce9c8b6a2c46cbf5c9005f0fe 100644 (file)
 
 #include "ModuleBase_Filter.h"
 
+#include <StdSelect_TypeOfEdge.hxx>
+
 /**
-* A filter which provides filtering of selection in 3d viewer.
-* Installing of this filter lets to select only object of requested type
+* \ingroup GUI
+* A class of a viewer filter by linear edges
 */
-DEFINE_STANDARD_HANDLE(ModuleBase_FilterLinearEdge, ModuleBase_Filter);
 class ModuleBase_FilterLinearEdge: public ModuleBase_Filter
 {
 public:
-  Standard_EXPORT ModuleBase_FilterLinearEdge(): 
-      ModuleBase_Filter() {}
+  /// Convert string to StdSelect_TypeOfFace value
+  /// \param theType a string value
+  static MODULEBASE_EXPORT StdSelect_TypeOfEdge edgeType(const std::string& theType);
 
-  Standard_EXPORT virtual Standard_Boolean IsOk(const Handle(SelectMgr_EntityOwner)& theOwner) const;
+  /// Constructor
+  MODULEBASE_EXPORT ModuleBase_FilterLinearEdge(): 
+      ModuleBase_Filter() {}
 
-  DEFINE_STANDARD_RTTI(ModuleBase_FilterLinearEdge)
+  /**
+   * Sets the arguments to the filter.
+   * \param theArguments a list of arguments
+   */
+  MODULEBASE_EXPORT virtual void setArguments(const std::list<std::string>& theArguments);
+
+protected:
+  /**
+   * It creates an OCC edge filter
+   */
+  virtual void createFilter();
 
 };