return false;
}
+ /// Returns true if the feature is a copy of other feature
+ SKETCHPLUGIN_EXPORT virtual bool isCopy() const
+ {
+ return false;
+ }
+
/// Moves the feature
/// \param theDeltaX the delta for X coordinate is moved
/// \param theDeltaY the delta for Y coordinate is moved
// Check external feature
std::shared_ptr<SketchPlugin_Feature> aSketchFeature =
std::dynamic_pointer_cast<SketchPlugin_Feature>(theFeature);
- if (aSketchFeature && aSketchFeature->isExternal())
+ if (aSketchFeature && (aSketchFeature->isExternal() || aSketchFeature->isCopy()))
aGroup = GID_OUTOFGROUP;
aRelated = aBuilder->createFeature(theFeature, aSubs, aGroup);
if (!aRelated)
// Check attribute of external features
std::shared_ptr<SketchPlugin_Feature> aSketchFeature =
std::dynamic_pointer_cast<SketchPlugin_Feature>(theAttribute->owner());
- if (aSketchFeature && aSketchFeature->isExternal())
+ if (aSketchFeature && (aSketchFeature->isExternal() || aSketchFeature->isCopy()))
aGroup = GID_OUTOFGROUP;
aRelated = aBuilder->createAttribute(anAttribute, aGroup);
if (!aRelated)