-// Copyright (C) 2014-2020 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023 CEA, EDF
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
aShape2 = aContext2->shape();
}
- bool isPlaneFirst = false;
anEdge = getEdge(aShape1);
-
aFace = getFace(aShape2);
if(!anEdge.get() || !aFace.get()) {
anEdge = getEdge(aShape2);
aFace = getFace(aShape1);
- isPlaneFirst = true;
}
if(!anEdge.get() || !aFace.get()) {
return true;
}
+//==================================================================================================
+bool ConstructionPlugin_ValidatorNotFeature::isValid(
+ const AttributePtr& theAttribute,
+ const std::list<std::string>& /*theArguments*/,
+ Events_InfoMessage& theError) const
+{
+ AttributeSelectionPtr aSelAttr =
+ std::dynamic_pointer_cast<ModelAPI_AttributeSelection>(theAttribute);
+ if (!aSelAttr) {
+ theError = "Wrong attribute";
+ return false;
+ }
+
+ FeaturePtr aContextFeature = aSelAttr->contextFeature();
+ if (aContextFeature) {
+ theError = "Feature should not be selected";
+ return false;
+ }
+ return true;
+}
+
+//==================================================================================================
+
std::shared_ptr<GeomAPI_Edge> getEdge(const GeomShapePtr theShape)
{
GeomEdgePtr anEdge;