Salome HOME
fix bug 10073. Check isVisible() in enterEvent() which unexpectedly comes after accept()
[modules/smesh.git] / src / SMESHGUI / SMESHGUI_CreatePatternDlg.cxx
index 6b1f20e1287f6a4d3fcc29085ff6ff2aab22c77c..caa762e9e44c3ec923b28e4b262ee7a13f56e03a 100755 (executable)
@@ -42,8 +42,8 @@
 #include "SUIT_FileDlg.h"\r
 \r
 #include "SalomeApp_Study.h"\r
-#include "SalomeApp_DataOwner.h"\r
-#include "SalomeApp_SelectionMgr.h"\r
+#include "LightApp_DataOwner.h"\r
+#include "LightApp_SelectionMgr.h"\r
 #include "SalomeApp_Tools.h"\r
 \r
 #include "SALOMEDS_SObject.hxx"\r
@@ -290,7 +290,7 @@ void SMESHGUI_CreatePatternDlg::SetMesh (SMESH::SMESH_Mesh_ptr thePtr)
     _PTR(SObject) aSobj = SMESH::FindSObject(myMesh.in());\r
     //Handle(SALOME_InteractiveObject) anIObj =\r
     //  new SALOME_InteractiveObject(aSobj->GetID().c_str(), "SMESH");\r
-    SUIT_DataOwnerPtr anIObj (new SalomeApp_DataOwner(aSobj->GetID().c_str()));\r
+    SUIT_DataOwnerPtr anIObj (new LightApp_DataOwner(aSobj->GetID().c_str()));\r
 \r
     isValidMesh = mySelectionMgr->isOk(anIObj);\r
   }\r
@@ -581,10 +581,13 @@ void SMESHGUI_CreatePatternDlg::onDeactivate()
 //=======================================================================\r
 void SMESHGUI_CreatePatternDlg::enterEvent (QEvent*)\r
 {\r
-  mySMESHGUI->EmitSignalDeactivateDialog();\r
-  setEnabled(true);\r
-  activateSelection();\r
-  connect(mySelectionMgr, SIGNAL(currentSelectionChanged()), SLOT(onSelectionDone()));\r
+  // there is a stange problem that enterEvent() comes after onSave()\r
+  if ( isVisible () ) {\r
+    mySMESHGUI->EmitSignalDeactivateDialog();\r
+    setEnabled(true);\r
+    activateSelection();\r
+    connect(mySelectionMgr, SIGNAL(currentSelectionChanged()), SLOT(onSelectionDone()));\r
+  }\r
 }\r
 \r
 //=================================================================================\r