X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FPartSet%2FPartSet_SketcherReentrantMgr.cpp;h=488f5660a99f9361880f0c25d393bf3b9159bf90;hb=f68074b0f3e013e10a9d06016ceac84827a5cdc2;hp=cab4e9945363d6912af1c7045d259d88ef00109a;hpb=791a0ecc4adf1672feadb268205ae23b82bf1b95;p=modules%2Fshaper.git diff --git a/src/PartSet/PartSet_SketcherReentrantMgr.cpp b/src/PartSet/PartSet_SketcherReentrantMgr.cpp index cab4e9945..488f5660a 100644 --- a/src/PartSet/PartSet_SketcherReentrantMgr.cpp +++ b/src/PartSet/PartSet_SketcherReentrantMgr.cpp @@ -389,9 +389,17 @@ bool PartSet_SketcherReentrantMgr::canBeCommittedByPreselection() return !isActiveMgr() || myRestartingMode == RM_None; } -bool PartSet_SketcherReentrantMgr::isInternalEditStarted() const +void PartSet_SketcherReentrantMgr::appendCreatedObjects(const std::set& theObjects) { - return myIsInternalEditOperation; + if (!myIsFlagsBlocked) // we need to collect objects only when launch operation is called + return; + + for (std::set::const_iterator anIt = theObjects.begin(); + anIt != theObjects.end(); ++anIt) { + FeaturePtr aFeature = ModelAPI_Feature::feature(*anIt); + if (myCreatedFeatures.find(aFeature) != myCreatedFeatures.end()) + myCreatedFeatures.insert(aFeature); + } } bool PartSet_SketcherReentrantMgr::isActiveMgr() const @@ -618,6 +626,7 @@ void PartSet_SketcherReentrantMgr::resetFlags() myIsInternalEditOperation = false; updateAcceptAllAction(); myRestartingMode = RM_None; + myCreatedFeatures.clear(); } }