]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
Issue #394 Undo-ing a Sketch element
authornds <natalia.donis@opencascade.com>
Mon, 16 Feb 2015 13:46:42 +0000 (16:46 +0300)
committernds <natalia.donis@opencascade.com>
Mon, 16 Feb 2015 13:46:42 +0000 (16:46 +0300)
Check the value on initialized and do not set new value if it was initialized.

src/ModuleBase/ModuleBase_ModelWidget.cpp

index d332eedc76e0d5dccb92ae34e667c469a391a3ef..6351c4f785c918f13e0af6c98637ad81598d4023 100644 (file)
@@ -99,14 +99,17 @@ void ModuleBase_ModelWidget::activate()
   // the control value is stored to the mode by the focus in on the widget
   // we need the value is initialized in order to enable the apply button in the property panel.
   // It should happens in the creation mode only because all fields are filled in the edition mode
-  if (!isEditingMode()/* && !myFeature->data()->attribute(myAttributeID)->isInitialized()*/) {
-    if (isComputedDefault()) {
-      if (myFeature->compute(myAttributeID)) {
-        restoreValue();
-      }      
-    }
-    else {
-      storeValue();
+  if (!isEditingMode()) {
+    AttributePtr anAttribute = myFeature->data()->attribute(myAttributeID);
+    if (anAttribute.get() != NULL && !anAttribute->isInitialized()) {
+      if (isComputedDefault()) {
+        if (myFeature->compute(myAttributeID)) {
+          restoreValue();
+        }      
+      }
+      else {
+        storeValue();
+      }
     }
   }
   activateCustom();