plcopen/plcopen.py
changeset 69 8fbff50141f8
parent 68 66308e07402c
child 74 a33f06a63e1d
equal deleted inserted replaced
68:66308e07402c 69:8fbff50141f8
   847             condition.setName(value)
   847             condition.setName(value)
   848         elif type == "inline":
   848         elif type == "inline":
   849             condition = PLCOpenClasses["condition_inline"]()
   849             condition = PLCOpenClasses["condition_inline"]()
   850             condition.setContent("ST", PLCOpenClasses["formattedText"]())
   850             condition.setContent("ST", PLCOpenClasses["formattedText"]())
   851             condition.setText(value)
   851             condition.setText(value)
       
   852         elif type == "connection":
       
   853             condition = []
   852         self.condition.setContent(type, condition)
   854         self.condition.setContent(type, condition)
   853     setattr(cls, "setConditionContent", setConditionContent)
   855     setattr(cls, "setConditionContent", setConditionContent)
   854         
   856         
   855     def getConditionContent(self):
   857     def getConditionContent(self):
   856         if self.condition:
   858         if self.condition:
   873             elif content["name"] == "inline":
   875             elif content["name"] == "inline":
   874                 content["value"].updateElementName(old_name, new_name)
   876                 content["value"].updateElementName(old_name, new_name)
   875     setattr(cls, "updateElementName", updateElementName)
   877     setattr(cls, "updateElementName", updateElementName)
   876 
   878 
   877     def addConnection(self):
   879     def addConnection(self):
   878         print "addConnection"
   880         if self.condition:
   879         if not self.condition:
       
   880             self.addCondition()
       
   881         content = self.condition.getContent()
       
   882         if content["name"] != "connection":
       
   883             self.condition.setContent("connection", [])
       
   884             content = self.condition.getContent()
   881             content = self.condition.getContent()
   885         content["value"].append(PLCOpenClasses["connection"]())
   882             if content["name"] != "connection":
       
   883                 self.condition.setContent("connection", [])
       
   884                 content = self.condition.getContent()
       
   885             content["value"].append(PLCOpenClasses["connection"]())
   886     setattr(cls, "addConnection", addConnection)
   886     setattr(cls, "addConnection", addConnection)
   887     
   887     
   888     def removeConnection(self, idx):
   888     def removeConnection(self, idx):
   889         if self.condition:
   889         if self.condition:
   890             content = self.condition.getContent()
   890             content = self.condition.getContent()
   900     setattr(cls, "removeConnections", removeConnections)
   900     setattr(cls, "removeConnections", removeConnections)
   901     
   901     
   902     def getConnections(self):
   902     def getConnections(self):
   903         if self.condition:
   903         if self.condition:
   904             content = self.condition.getContent()
   904             content = self.condition.getContent()
   905             print "getConnections", content
       
   906             if content["name"] == "connection":
   905             if content["name"] == "connection":
   907                 return content["value"]
   906                 return content["value"]
   908     setattr(cls, "getConnections", getConnections)
   907     setattr(cls, "getConnections", getConnections)
   909     
   908     
   910     def setConnectionId(self, idx, id):
   909     def setConnectionId(self, idx, id):
   911         if self.condition:
   910         if self.condition:
   912             content = self.condition.getContent()
   911             content = self.condition.getContent()
   913             if content["name"] == "connection":
   912             if content["name"] == "connection":
   914                 content["value"][idx].setRefLocalId(id)
   913                 content["value"][idx].setRefLocalId(id)
   915             print "SetId", content
       
   916     setattr(cls, "setConnectionId", setConnectionId)
   914     setattr(cls, "setConnectionId", setConnectionId)
   917     
   915     
   918     def getConnectionId(self, idx):
   916     def getConnectionId(self, idx):
   919         if self.condition:
   917         if self.condition:
   920             content = self.condition.getContent()
   918             content = self.condition.getContent()
   926     def setConnectionPoints(self, idx, points):
   924     def setConnectionPoints(self, idx, points):
   927         if self.condition:
   925         if self.condition:
   928             content = self.condition.getContent()
   926             content = self.condition.getContent()
   929             if content["name"] == "connection":
   927             if content["name"] == "connection":
   930                 content["value"][idx].setPoints(points)
   928                 content["value"][idx].setPoints(points)
   931             print "SetPoints", content
       
   932     setattr(cls, "setConnectionPoints", setConnectionPoints)
   929     setattr(cls, "setConnectionPoints", setConnectionPoints)
   933 
   930 
   934     def getConnectionPoints(self, idx):
   931     def getConnectionPoints(self, idx):
   935         if self.condition:
   932         if self.condition:
   936             content = self.condition.getContent()
   933             content = self.condition.getContent()
   942     def setConnectionParameter(self, idx, parameter):
   939     def setConnectionParameter(self, idx, parameter):
   943         if self.condition:
   940         if self.condition:
   944             content = self.condition.getContent()
   941             content = self.condition.getContent()
   945             if content["name"] == "connection":
   942             if content["name"] == "connection":
   946                 content["value"][idx].setFormalParameter(parameter)
   943                 content["value"][idx].setFormalParameter(parameter)
   947             print "SetParameter", content
       
   948     setattr(cls, "setConnectionParameter", setConnectionParameter)
   944     setattr(cls, "setConnectionParameter", setConnectionParameter)
   949     
   945     
   950     def getConnectionParameter(self, idx):
   946     def getConnectionParameter(self, idx):
   951         if self.condition:
   947         if self.condition:
   952             content = self.condition.getContent()
   948             content = self.condition.getContent()