1298 infos["connectors"]["action"] = {"position" : instance.connectionPointOutAction.getRelPosition()} |
1298 infos["connectors"]["action"] = {"position" : instance.connectionPointOutAction.getRelPosition()} |
1299 elif isinstance(instance, plcopen.transition): |
1299 elif isinstance(instance, plcopen.transition): |
1300 infos["type"] = "transition" |
1300 infos["type"] = "transition" |
1301 condition = instance.getConditionContent() |
1301 condition = instance.getConditionContent() |
1302 infos["condition_type"] = condition["type"] |
1302 infos["condition_type"] = condition["type"] |
1303 infos["condition"] = condition["value"] |
|
1304 infos["connectors"] = {"input":{},"output":{}} |
1303 infos["connectors"] = {"input":{},"output":{}} |
1305 infos["connectors"]["input"]["position"] = instance.connectionPointIn.getRelPosition() |
1304 infos["connectors"]["input"]["position"] = instance.connectionPointIn.getRelPosition() |
1306 infos["connectors"]["input"]["links"] = [] |
1305 infos["connectors"]["input"]["links"] = [] |
1307 connections = instance.connectionPointIn.getConnections() |
1306 connections = instance.connectionPointIn.getConnections() |
1308 if connections: |
1307 if connections: |
1309 for link in connections: |
1308 for link in connections: |
1310 dic = {"refLocalId":link.getRefLocalId(),"points":link.getPoints(),"formalParameter":link.getFormalParameter()} |
1309 dic = {"refLocalId":link.getRefLocalId(),"points":link.getPoints(),"formalParameter":link.getFormalParameter()} |
1311 infos["connectors"]["input"]["links"].append(dic) |
1310 infos["connectors"]["input"]["links"].append(dic) |
1312 infos["connectors"]["output"]["position"] = instance.connectionPointOut.getRelPosition() |
1311 infos["connectors"]["output"]["position"] = instance.connectionPointOut.getRelPosition() |
|
1312 if infos["condition_type"] == "connection": |
|
1313 infos["connectors"]["connection"] = {} |
|
1314 infos["connectors"]["connection"]["links"] = [] |
|
1315 connections = instance.getConnections() |
|
1316 print connections |
|
1317 if connections: |
|
1318 for link in connections: |
|
1319 dic = {"refLocalId":link.getRefLocalId(),"points":link.getPoints(),"formalParameter":link.getFormalParameter()} |
|
1320 infos["connectors"]["connection"]["links"].append(dic) |
|
1321 infos["condition"] = None |
|
1322 else: |
|
1323 infos["condition"] = condition["value"] |
1313 elif isinstance(instance, (plcopen.selectionDivergence, plcopen.simultaneousDivergence)): |
1324 elif isinstance(instance, (plcopen.selectionDivergence, plcopen.simultaneousDivergence)): |
1314 if isinstance(instance, plcopen.selectionDivergence): |
1325 if isinstance(instance, plcopen.selectionDivergence): |
1315 infos["type"] = "selectionDivergence" |
1326 infos["type"] = "selectionDivergence" |
1316 else: |
1327 else: |
1317 infos["type"] = "simultaneousDivergence" |
1328 infos["type"] = "simultaneousDivergence" |
1741 self.GetCurrentElementEditing().addInstance("transition", transition) |
1752 self.GetCurrentElementEditing().addInstance("transition", transition) |
1742 |
1753 |
1743 def SetCurrentElementEditingTransitionInfos(self, id, infos): |
1754 def SetCurrentElementEditingTransitionInfos(self, id, infos): |
1744 transition = self.GetCurrentElementEditing().getInstance(id) |
1755 transition = self.GetCurrentElementEditing().getInstance(id) |
1745 for param, value in infos.items(): |
1756 for param, value in infos.items(): |
1746 if param == "type" and "condition" in infos: |
1757 if param == "type" and infos.get("condition", None): |
1747 transition.setConditionContent(value, infos["condition"]) |
1758 transition.setConditionContent(value, infos["condition"]) |
1748 elif param == "height": |
1759 elif param == "height": |
1749 transition.setHeight(value) |
1760 transition.setHeight(value) |
1750 elif param == "width": |
1761 elif param == "width": |
1751 transition.setWidth(value) |
1762 transition.setWidth(value) |
1761 self.SetConnectionWires(transition.connectionPointIn, input_connector) |
1772 self.SetConnectionWires(transition.connectionPointIn, input_connector) |
1762 output_connector = value["output"] |
1773 output_connector = value["output"] |
1763 position = output_connector.GetRelPosition() |
1774 position = output_connector.GetRelPosition() |
1764 transition.addConnectionPointOut() |
1775 transition.addConnectionPointOut() |
1765 transition.connectionPointOut.setRelPosition(position.x, position.y) |
1776 transition.connectionPointOut.setRelPosition(position.x, position.y) |
|
1777 if infos.get("type", None) == "connection": |
|
1778 connection_connector = value["connection"] |
|
1779 self.SetConnectionWires(transition, connection_connector) |
1766 |
1780 |
1767 def AddCurrentElementEditingDivergence(self, id, type): |
1781 def AddCurrentElementEditingDivergence(self, id, type): |
1768 if type == SELECTION_DIVERGENCE: |
1782 if type == SELECTION_DIVERGENCE: |
1769 name = "selectionDivergence" |
1783 name = "selectionDivergence" |
1770 divergence = plcopen.selectionDivergence() |
1784 divergence = plcopen.selectionDivergence() |