PLCControler.py
changeset 427 22d16c457d87
parent 424 d19c4a6460ab
child 428 3b19c34bac04
equal deleted inserted replaced
426:afe2488a4635 427:22d16c457d87
  1647                 if root.nodeType == tree.ELEMENT_NODE and root.nodeName == "paste":
  1647                 if root.nodeType == tree.ELEMENT_NODE and root.nodeName == "paste":
  1648                     for child in root.childNodes:
  1648                     for child in root.childNodes:
  1649                         if child.nodeType == tree.ELEMENT_NODE:
  1649                         if child.nodeType == tree.ELEMENT_NODE:
  1650                             classname = plcopen.ElementNameToClass[child.nodeName]
  1650                             classname = plcopen.ElementNameToClass[child.nodeName]
  1651                             if not self.CheckPasteCompatibility[bodytype](classname):
  1651                             if not self.CheckPasteCompatibility[bodytype](classname):
  1652                                 return _("\"%s\" element can't be paste here!!!")%child.nodeName
  1652                                 return _("\"%s\" element can't be pasted here!!!")%child.nodeName
       
  1653 
  1653                             classobj = getattr(plcopen, classname, None)
  1654                             classobj = getattr(plcopen, classname, None)
  1654                             if classobj is not None:
  1655                             if classobj is not None:
  1655                                 instance = classobj()
  1656                                 instance = classobj()
  1656                                 instance.loadXMLTree(child)
  1657                                 instance.loadXMLTree(child)
  1657                                 if child.nodeName == "block":
  1658                                 if child.nodeName == "block":
  1658                                     blockname = instance.getinstanceName()
  1659                                     blockname = instance.getinstanceName()
  1659                                     if blockname is not None:
  1660                                     if blockname is not None:
  1660                                         blocktype = instance.gettypeName()
  1661                                         blocktype = instance.gettypeName()
  1661                                         if element_type == "function":
  1662                                         if element_type == "function":
  1662                                             return _("FunctionBlock \"%s\" can't be paste in a Function!!!")%blocktype
  1663                                             return _("FunctionBlock \"%s\" can't be pasted in a Function!!!")%blocktype
  1663                                         blockname = self.GenerateNewName(tagname, blockname, "Block%d", debug=debug)
  1664                                         blockname = self.GenerateNewName(tagname, blockname, "Block%d", debug=debug)
  1664                                         exclude[blockname] = True
  1665                                         exclude[blockname] = True
  1665                                         instance.setinstanceName(blockname)
  1666                                         instance.setinstanceName(blockname)
  1666                                         self.AddEditedElementPouVar(tagname, blocktype, blockname)
  1667                                         self.AddEditedElementPouVar(tagname, blocktype, blockname)
  1667                                 elif child.nodeName == "step":
  1668                                 elif child.nodeName == "step":