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
Fix for #767: correct the internal history structure for nested features
[modules/shaper.git]
/
src
/
Model
/
Model_AttributeReference.cpp
diff --git
a/src/Model/Model_AttributeReference.cpp
b/src/Model/Model_AttributeReference.cpp
index 8a44eec0e20051292bb7d57617a0f72e9c1e7119..beb04549cffe4a51c359d83158e386613ddb07e8 100644
(file)
--- a/
src/Model/Model_AttributeReference.cpp
+++ b/
src/Model/Model_AttributeReference.cpp
@@
-28,7
+28,7
@@
void Model_AttributeReference::setValue(ObjectPtr theObject)
REMOVE_BACK_REF(aValue);
TDF_Label anObjLab;
REMOVE_BACK_REF(aValue);
TDF_Label anObjLab;
- if (theObject.get() && theObject->data()
.get() && theObject->data()
->isValid()) {
+ if (theObject.get() && theObject->data()->isValid()) {
std::shared_ptr<Model_Data> aData = std::dynamic_pointer_cast<Model_Data>(
theObject->data());
anObjLab = aData->label().Father(); // object label
std::shared_ptr<Model_Data> aData = std::dynamic_pointer_cast<Model_Data>(
theObject->data());
anObjLab = aData->label().Father(); // object label
@@
-36,8
+36,6
@@
void Model_AttributeReference::setValue(ObjectPtr theObject)
// same document, use reference attribute
if (anObjLab.IsNull() || owner()->document() == theObject->document()) {
// same document, use reference attribute
if (anObjLab.IsNull() || owner()->document() == theObject->document()) {
- std::shared_ptr<Model_Document> aDoc =
- std::dynamic_pointer_cast<Model_Document>(owner()->document());
if (anObjLab.IsNull()) {
myRef->Set(myRef->Label());
} else {
if (anObjLab.IsNull()) {
myRef->Set(myRef->Label());
} else {
@@
-96,7
+94,8
@@
ObjectPtr Model_AttributeReference::value()
bool Model_AttributeReference::isInitialized()
{
bool Model_AttributeReference::isInitialized()
{
- if (myRef->Label() == myRef->Get()) { // empty reference is not initialized
+ if (myRef->Label() == myRef->Get() && !myRef->Label().IsAttribute(TDataStd_Comment::GetID())) {
+ // empty reference is not initialized
return false;
}
return ModelAPI_AttributeReference::isInitialized();
return false;
}
return ModelAPI_AttributeReference::isInitialized();