Salome HOME
Issue #3130: Clear error state after correct editing of a coordinate
authorvsv <vsv@opencascade.com>
Thu, 19 Dec 2019 12:38:16 +0000 (15:38 +0300)
committervsv <vsv@opencascade.com>
Thu, 19 Dec 2019 12:38:16 +0000 (15:38 +0300)
src/ModuleBase/ModuleBase_WidgetPointInput.cpp
src/XGUI/XGUI_PropertyPanel.cpp

index ca7c3c055209afb2a4ecff874246bb7de8230777..ada7b4eb06e56d5a0c5ff4cb57a13e074e8e90a3 100644 (file)
@@ -151,6 +151,7 @@ bool ModuleBase_WidgetPointInput::storeValueCustom()
         }
         aAttr->setText(aXText, aYText, aZText);
       } else {
+        aAttr->setText("", "", "");
         aAttr->setValue(myXSpin->value(), myYSpin->value(), myZSpin->value());
       }
     } else {
@@ -196,6 +197,7 @@ bool ModuleBase_WidgetPointInput::restoreValueCustom()
       myYSpin->setValue(myDefaultValue[1]);
       myZSpin->setValue(myDefaultValue[2]);
     }
+    setValueState(Stored);
     return true;
   }
   return false;
index 3860a9ff1af1bad55f3132d648b8547ca594e44b..a3e0bf2d004f512ec1a7ebf30f67fe1839ca04c9 100644 (file)
@@ -478,7 +478,7 @@ bool XGUI_PropertyPanel::focusNextPrevChild(bool theIsNext)
     ModuleBase_ModelWidget* aNewFocusMWidget = ModuleBase_ModelWidget::findModelWidget(this,
                                                                               aNewFocusWidget);
     if (aNewFocusMWidget) {
-      if (aFocusMWidget) {
+      if (aFocusMWidget && (aFocusMWidget != aNewFocusMWidget)) {
         aFocusMWidget->setHighlighted(false);
       }
       aNewFocusMWidget->emitFocusInWidget();