X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_Validators.cpp;h=69c488639f9e7287e05406cb7b1ba60b7f7e06ae;hb=5709da577274e3e7ff0e572c05166337d7851e15;hp=8f026d712489af75f531e6150b3b844ec18a6627;hpb=f1cd93fd02a54259f72e3191d037323a496b2bef;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_Validators.cpp b/src/PartSet/PartSet_Validators.cpp index 8f026d712..69c488639 100644 --- a/src/PartSet/PartSet_Validators.cpp +++ b/src/PartSet/PartSet_Validators.cpp @@ -17,7 +17,12 @@ #include #include +#include + #include +#ifdef _DEBUG +#include +#endif int shapesNbPoints(const ModuleBase_ISelection* theSelection) { @@ -55,7 +60,7 @@ int shapesNbLines(const ModuleBase_ISelection* theSelection) bool PartSet_DistanceValidator::isValid(const ModuleBase_ISelection* theSelection) const { - int aCount = shapesNbPoints(theSelection); + int aCount = shapesNbPoints(theSelection) + shapesNbLines(theSelection); return (aCount > 0) && (aCount < 3); } @@ -98,7 +103,11 @@ bool PartSet_RadiusValidator::isValid(const ModuleBase_ISelection* theSelection) return (aCount > 0) && (aCount < 2); } - +bool PartSet_RigidValidator::isValid(const ModuleBase_ISelection* theSelection) const +{ + int aCount = shapesNbLines(theSelection); + return (aCount > 0) && (aCount < 2); +} bool PartSet_DifferentObjectsValidator::isValid(const FeaturePtr& theFeature, const std::list& theArguments, @@ -163,4 +172,10 @@ bool PartSet_DifferentObjectsValidator::isValid(const AttributePtr& theAttribute { // not implemented return true; -} \ No newline at end of file +} + +bool PartSet_SketchValidator::isValid(const ObjectPtr theObject) const +{ + FeaturePtr aFeature = ModelAPI_Feature::feature(theObject); + return aFeature->getKind() == SketchPlugin_Sketch::ID(); +}