]> SALOME platform Git repositories - modules/superv.git/blobdiff - src/SUPERVGUI/SUPERVGUI_ControlNode.cxx
Salome HOME
NRI : Merge from 1.2c.
[modules/superv.git] / src / SUPERVGUI / SUPERVGUI_ControlNode.cxx
index 2636dbcae7e6994c61eb3f0030c119e15dbcf190..fd5ab5ed4929dea67c7c3a53383f0c18473fe257 100644 (file)
@@ -38,6 +38,7 @@ SUPERVGUI_StartControlNode::SUPERVGUI_StartControlNode(QWidget* theParent, SUPER
 
   myPortsBox->reparent(this, pos());
   aGridLayout->addMultiCellWidget(myPortsBox, 1, 1, 0, 1);
+  //  myGatesBox->setPaletteBackgroundColor(backgroundColor().dark(105));
 
   myStatus->reparent(this, pos());
   myTime->reparent(this, pos());
@@ -212,8 +213,7 @@ SUPERVGUI_EndControlNode::SUPERVGUI_EndControlNode(QWidget* theParent, SUPERVGUI
   myTitle->setPaletteBackgroundColor(TITLECOLOR);
   aGridLayout->addMultiCellWidget(myTitle, 0, 0, 0, 2);
 
-  myPortsBox = new QFrame(this);
-  myPortLayout = new QGridLayout(myPortsBox, 0, 2, 0, 1);
+  myPortsBox->reparent(this, pos());  
   
   myPIcount = 0;
   myPOcount = 0;
@@ -222,13 +222,34 @@ SUPERVGUI_EndControlNode::SUPERVGUI_EndControlNode(QWidget* theParent, SUPERVGUI
 
   for (int i=0; i<n; i++) {
     if (ports[i]->IsInput()) {
-      myPortLayout->addWidget(new SUPERVGUI_PortIn(myPortsBox, myMain, ports[i]), 
-                             myPIcount, 0);
-      myPIcount++;
+      if (getComputingNode()->IsEndSwitch()) {
+       if (ports[i]->IsGate())
+         myGatesLayout->addWidget(new SUPERVGUI_PortInESNode(myGatesBox, myMain, ports[i]), 
+                                 0, 0);
+       else {
+         myPortLayout->addWidget(new SUPERVGUI_PortInESNode(myValuesBox, myMain, ports[i]), 
+                                 myPIcount, 0);
+         myPIcount++;
+       }
+      } else {
+       if (ports[i]->IsGate())
+         myGatesLayout->addWidget(new SUPERVGUI_PortIn(myGatesBox, myMain, ports[i]), 
+                                  0, 0);
+       else {
+         myPortLayout->addWidget(new SUPERVGUI_PortIn(myValuesBox, myMain, ports[i]), 
+                                 myPIcount, 0);
+         myPIcount++;
+       }
+      }
     } else {
-      myPortLayout->addWidget(new SUPERVGUI_PortOut(myPortsBox, myMain, ports[i]), 
-                             myPOcount, 1, Qt::AlignRight);
-      myPOcount++;
+      if (ports[i]->IsGate())
+       myGatesLayout->addWidget(new SUPERVGUI_PortOut(myGatesBox, myMain, ports[i]), 
+                                0, 1, Qt::AlignRight);
+      else {
+       myPortLayout->addWidget(new SUPERVGUI_PortOut(myValuesBox, myMain, ports[i]), 
+                               myPOcount, 1, Qt::AlignRight);
+       myPOcount++;
+      }
     }
   }
   aGridLayout->addMultiCellWidget(myPortsBox, 1, 1, 1, 2);