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
Issue #2112 performance for partition
[modules/shaper.git]
/
src
/
PartSetPlugin
/
PartSetPlugin_Remove.cpp
diff --git
a/src/PartSetPlugin/PartSetPlugin_Remove.cpp
b/src/PartSetPlugin/PartSetPlugin_Remove.cpp
index bf54347099a38c2871a30476577c9ceae6537846..7bc6f3a1cc358ce8a59614e256de426aadd7c648 100644
(file)
--- a/
src/PartSetPlugin/PartSetPlugin_Remove.cpp
+++ b/
src/PartSetPlugin/PartSetPlugin_Remove.cpp
@@
-27,8
+27,9
@@
void PartSetPlugin_Remove::execute()
if (aPart.get()) {
FeaturePtr aFeature = aRoot->feature(aPart);
if (aFeature) {
if (aPart.get()) {
FeaturePtr aFeature = aRoot->feature(aPart);
if (aFeature) {
- // do remove
- aPart->data()->document(ModelAPI_ResultPart::DOC_REF())->value()->close();
+ // do remove, but don't do real close (features are erased without persistence changes
+ // document remove may be undoed)
+ // aPart->data()->document(ModelAPI_ResultPart::DOC_REF())->value()->close();
std::set<std::shared_ptr<ModelAPI_Feature> > aRefFeatures;
aRoot->refsToFeature(aFeature, aRefFeatures);
if (aRefFeatures.empty()) {
std::set<std::shared_ptr<ModelAPI_Feature> > aRefFeatures;
aRoot->refsToFeature(aFeature, aRefFeatures);
if (aRefFeatures.empty()) {