diff -r 1908c45f21ef -r 04a02b4b2a57 PLCControler.py --- a/PLCControler.py Fri Aug 03 18:02:54 2007 +0200 +++ b/PLCControler.py Tue Aug 07 17:37:38 2007 +0200 @@ -1300,7 +1300,6 @@ infos["type"] = "transition" condition = instance.getConditionContent() infos["condition_type"] = condition["type"] - infos["condition"] = condition["value"] infos["connectors"] = {"input":{},"output":{}} infos["connectors"]["input"]["position"] = instance.connectionPointIn.getRelPosition() infos["connectors"]["input"]["links"] = [] @@ -1310,6 +1309,18 @@ dic = {"refLocalId":link.getRefLocalId(),"points":link.getPoints(),"formalParameter":link.getFormalParameter()} infos["connectors"]["input"]["links"].append(dic) infos["connectors"]["output"]["position"] = instance.connectionPointOut.getRelPosition() + if infos["condition_type"] == "connection": + infos["connectors"]["connection"] = {} + infos["connectors"]["connection"]["links"] = [] + connections = instance.getConnections() + print connections + if connections: + for link in connections: + dic = {"refLocalId":link.getRefLocalId(),"points":link.getPoints(),"formalParameter":link.getFormalParameter()} + infos["connectors"]["connection"]["links"].append(dic) + infos["condition"] = None + else: + infos["condition"] = condition["value"] elif isinstance(instance, (plcopen.selectionDivergence, plcopen.simultaneousDivergence)): if isinstance(instance, plcopen.selectionDivergence): infos["type"] = "selectionDivergence" @@ -1743,7 +1754,7 @@ def SetCurrentElementEditingTransitionInfos(self, id, infos): transition = self.GetCurrentElementEditing().getInstance(id) for param, value in infos.items(): - if param == "type" and "condition" in infos: + if param == "type" and infos.get("condition", None): transition.setConditionContent(value, infos["condition"]) elif param == "height": transition.setHeight(value) @@ -1763,6 +1774,9 @@ position = output_connector.GetRelPosition() transition.addConnectionPointOut() transition.connectionPointOut.setRelPosition(position.x, position.y) + if infos.get("type", None) == "connection": + connection_connector = value["connection"] + self.SetConnectionWires(transition, connection_connector) def AddCurrentElementEditingDivergence(self, id, type): if type == SELECTION_DIVERGENCE: