]> SALOME platform Git repositories - modules/shaper.git/commitdiff
Salome HOME
External edges correction for sketch operations.
authornds <natalia.donis@opencascade.com>
Fri, 27 Mar 2015 11:45:31 +0000 (14:45 +0300)
committernds <natalia.donis@opencascade.com>
Fri, 27 Mar 2015 11:45:31 +0000 (14:45 +0300)
src/Model/Model_AttributeSelection.cpp
src/ModuleBase/ModuleBase_WidgetValidated.cpp

index f31bba3f33005d37a9486aca9a6f79a4e179a96c..ca0653fcc2ac05c0be6e13f45d6c37a2d525b372 100644 (file)
@@ -137,7 +137,7 @@ void Model_AttributeSelection::setValue(const ResultPtr& theContext,
 std::shared_ptr<GeomAPI_Shape> Model_AttributeSelection::value()
 {
   std::shared_ptr<GeomAPI_Shape> aResult;
-  if (myIsInitialized) {
+  if (myRef.isInitialized()) {
     TDF_Label aSelLab = selectionLabel();
     if (aSelLab.IsAttribute(kSIMPLE_REF_ID)) { // it is just reference to shape, not sub-shape
       ResultPtr aContext = context();
index e7285ab159157d243e0aa4447e99250fd1bc43b6..8f410e56d50dee27bcdebaaf8e7da61101ab0033 100644 (file)
@@ -11,6 +11,8 @@
 #include <SelectMgr_ListIteratorOfListOfFilter.hxx>
 #include <SelectMgr_EntityOwner.hxx>
 
+#include <Events_Loop.h>
+
 #include <QWidget>
 
 ModuleBase_WidgetValidated::ModuleBase_WidgetValidated(QWidget* theParent,
@@ -45,6 +47,11 @@ bool ModuleBase_WidgetValidated::isValid(const Handle_SelectMgr_EntityOwner& the
   AttributePtr anAttribute = myFeature->attribute(attributeID());
 
   // stores the current values of the widget attribute
+  Events_Loop* aLoop = Events_Loop::loop();
+  // blocks the flush signals to avoid the temporary objects visualization in the viewer
+  // they should not be shown in order to do not lose highlight by erasing them
+  aLoop->activateFlushes(false);
+
   aData->blockSendAttributeUpdated(true);
   bool isAttributeBlocked = anAttribute->blockSetInitialized(true);
   storeAttributeValue();
@@ -59,6 +66,7 @@ bool ModuleBase_WidgetValidated::isValid(const Handle_SelectMgr_EntityOwner& the
   restoreAttributeValue(aValid);
   aData->blockSendAttributeUpdated(false);
   anAttribute->blockSetInitialized(isAttributeBlocked);
+  aLoop->activateFlushes(true);
 
   return aValid;
 }