]> SALOME platform Git repositories - modules/superv.git/blobdiff - src/SUPERVGUI/SUPERVGUI_CanvasPort.cxx
Salome HOME
Fix for PAL7164: after analysis of the bug, it was found out that PublishInStudy...
[modules/superv.git] / src / SUPERVGUI / SUPERVGUI_CanvasPort.cxx
index 198c5ed0a91bcfb7ed2e2f8941b77a2c3140908f..756bd008dd9dd6fa745a758cd9f8e2a4364e8071 100644 (file)
@@ -80,7 +80,7 @@ QPopupMenu* SUPERVGUI_CanvasPort::getPopupMenu(QWidget* theParent)
                            && !myPort->Node()->IsMacro())
     popup->insertItem(tr("ITM_COPY_PORT"), this, SLOT(copy()));
 
-//int anItem = popup->insertItem(tr("MSG_BROWSE"), this, SLOT(browse()));
+  /*int anItem = */popup->insertItem(tr("MSG_BROWSE"), this, SLOT(browse()));
 //   if (getEngine()->IsLinked())
 //     popup->setItemEnabled(anItem, getEngine()->State() == SUPERV_Ready);
 //   else 
@@ -272,10 +272,17 @@ QPopupMenu* SUPERVGUI_CanvasPortOut::getPopupMenu(QWidget* theParent)
 
 void SUPERVGUI_CanvasPortOut::sync() 
 {
+  /* asv : 26.01.05 : Bug PAL7164 : sometimes CanvasPortOut::sync() is called twice (or maybe even more)
+           by mistake.  It happens because of incorrect Qt events, or other reason, but it is not a
+          stable feature (bug). Adding an object in the study in sync() is therefore called more than once
+          which is a BUG.  I decided to move call to putDataStudy() method to Event handling function.
+          When a node successfully finishes execution - check the ports and put out-value to study,
+          if the corresponding flag is set.
   bool ok = getEngine()->State() == SUPERV_Ready;
   if (ok && myInStudy) {
     myInStudy = getMain()->putDataStudy(getEngine(), STUDY_PORT_OUT);
   }
+  */
   SUPERVGUI_CanvasPort::update();
 }