Salome HOME
projects
/
modules
/
shaper.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow to react the sketch features on modification of its attributes
[modules/shaper.git]
/
src
/
SketchPlugin
/
SketchPlugin_Validators.cpp
diff --git
a/src/SketchPlugin/SketchPlugin_Validators.cpp
b/src/SketchPlugin/SketchPlugin_Validators.cpp
index d8d056f46da98a190e2f48e2e856482ba4c1de20..29bdf3c27310df0ba7abadc7ca882ea353ef4f85 100644
(file)
--- a/
src/SketchPlugin/SketchPlugin_Validators.cpp
+++ b/
src/SketchPlugin/SketchPlugin_Validators.cpp
@@
-22,10
+22,18
@@
bool SketchPlugin_DistanceAttrValidator::isValid(const FeaturePtr& theFeature,
SessionPtr aMgr = ModelAPI_Session::get();
ModelAPI_ValidatorsFactory* aFactory = aMgr->validators();
SessionPtr aMgr = ModelAPI_Session::get();
ModelAPI_ValidatorsFactory* aFactory = aMgr->validators();
+ const ModelAPI_ResultValidator* anArcValidator =
+ dynamic_cast<const ModelAPI_ResultValidator*>(aFactory->validator("SketchPlugin_ResultArc"));
+ bool anArcValid = anArcValidator->isValid(theObject);
+ if (anArcValid)
+ return false;
+
+
// If the object is not a line then it is accepted
const ModelAPI_ResultValidator* aLineValidator =
dynamic_cast<const ModelAPI_ResultValidator*>(aFactory->validator("SketchPlugin_ResultLine"));
// If the object is not a line then it is accepted
const ModelAPI_ResultValidator* aLineValidator =
dynamic_cast<const ModelAPI_ResultValidator*>(aFactory->validator("SketchPlugin_ResultLine"));
- if (!aLineValidator->isValid(theObject))
+ bool aLineValid = aLineValidator->isValid(theObject);
+ if (!aLineValid)
return true;
// If it is a line then we have to check that first attribute id not a line
return true;
// If it is a line then we have to check that first attribute id not a line