equal
deleted
inserted
replaced
63 self.Input = None |
63 self.Input = None |
64 self.Output = None |
64 self.Output = None |
65 self.Action = None |
65 self.Action = None |
66 |
66 |
67 # Make a clone of this SFC_Step |
67 # Make a clone of this SFC_Step |
68 def Clone(self, id = None, name = "Step", pos = None): |
68 def Clone(self, parent, id = None, name = "Step", pos = None): |
69 step = SFC_Step(self.Parent, name, self.Initial, id) |
69 step = SFC_Step(parent, name, self.Initial, id) |
70 step.SetSize(self.Size[0], self.Size[1]) |
70 step.SetSize(self.Size[0], self.Size[1]) |
71 if pos is not None: |
71 if pos is not None: |
72 step.SetPosition(pos.x, pos.y) |
72 step.SetPosition(pos.x, pos.y) |
73 if self.Input: |
73 if self.Input: |
74 step.Input = self.Input.Clone(step) |
74 step.Input = self.Input.Clone(step) |
507 self.Output = None |
507 self.Output = None |
508 if self.Type == "connection": |
508 if self.Type == "connection": |
509 self.Condition = None |
509 self.Condition = None |
510 |
510 |
511 # Make a clone of this SFC_Transition |
511 # Make a clone of this SFC_Transition |
512 def Clone(self, id = None, pos = None): |
512 def Clone(self, parent, id = None, pos = None): |
513 transition = SFC_Transition(self.Parent, self.Type, self.Condition, self.Priority, id) |
513 transition = SFC_Transition(parent, self.Type, self.Condition, self.Priority, id) |
514 transition.SetSize(self.Size[0], self.Size[1]) |
514 transition.SetSize(self.Size[0], self.Size[1]) |
515 if pos is not None: |
515 if pos is not None: |
516 transition.SetPosition(pos.x, pos.y) |
516 transition.SetPosition(pos.x, pos.y) |
517 transition.Input = self.Input.Clone(transition) |
517 transition.Input = self.Input.Clone(transition) |
518 transition.Output = self.Output.Clone(transition) |
518 transition.Output = self.Output.Clone(transition) |
876 def __del__(self): |
876 def __del__(self): |
877 self.Inputs = [] |
877 self.Inputs = [] |
878 self.Outputs = [] |
878 self.Outputs = [] |
879 |
879 |
880 # Make a clone of this SFC_Divergence |
880 # Make a clone of this SFC_Divergence |
881 def Clone(self, id = None, pos = None): |
881 def Clone(self, parent, id = None, pos = None): |
882 divergence = SFC_Divergence(self.Parent, self.Type, max(len(self.Inputs), len(self.Outputs)), id) |
882 divergence = SFC_Divergence(parent, self.Type, max(len(self.Inputs), len(self.Outputs)), id) |
883 divergence.SetSize(self.Size[0], self.Size[1]) |
883 divergence.SetSize(self.Size[0], self.Size[1]) |
884 if pos is not None: |
884 if pos is not None: |
885 divergence.SetPosition(pos.x, pos.y) |
885 divergence.SetPosition(pos.x, pos.y) |
886 divergence.Inputs = [input.Clone(divergence) for input in self.Inputs] |
886 divergence.Inputs = [input.Clone(divergence) for input in self.Inputs] |
887 divergence.Outputs = [output.Clone(divergence) for output in self.Outputs] |
887 divergence.Outputs = [output.Clone(divergence) for output in self.Outputs] |
1290 # Destructor |
1290 # Destructor |
1291 def __del__(self): |
1291 def __del__(self): |
1292 self.Input = None |
1292 self.Input = None |
1293 |
1293 |
1294 # Make a clone of this SFC_Jump |
1294 # Make a clone of this SFC_Jump |
1295 def Clone(self, id = None, pos = None): |
1295 def Clone(self, parent, id = None, pos = None): |
1296 jump = SFC_Jump(self.Parent, self.Target, id) |
1296 jump = SFC_Jump(parent, self.Target, id) |
1297 jump.SetSize(self.Size[0], self.Size[1]) |
1297 jump.SetSize(self.Size[0], self.Size[1]) |
1298 if pos is not None: |
1298 if pos is not None: |
1299 jump.SetPosition(pos.x, pos.y) |
1299 jump.SetPosition(pos.x, pos.y) |
1300 jump.Input = self.Input.Clone(jump) |
1300 jump.Input = self.Input.Clone(jump) |
1301 return jump |
1301 return jump |
1499 # Destructor |
1499 # Destructor |
1500 def __del__(self): |
1500 def __del__(self): |
1501 self.Input = None |
1501 self.Input = None |
1502 |
1502 |
1503 # Make a clone of this SFC_ActionBlock |
1503 # Make a clone of this SFC_ActionBlock |
1504 def Clone(self, id = None, pos = None): |
1504 def Clone(self, parent, id = None, pos = None): |
1505 actions = [action.copy() for action in self.Actions] |
1505 actions = [action.copy() for action in self.Actions] |
1506 action_block = SFC_ActionBlock(self.Parent, actions, id) |
1506 action_block = SFC_ActionBlock(parent, actions, id) |
1507 action_block.SetSize(self.Size[0], self.Size[1]) |
1507 action_block.SetSize(self.Size[0], self.Size[1]) |
1508 if pos is not None: |
1508 if pos is not None: |
1509 action_block.SetPosition(pos.x, pos.y) |
1509 action_block.SetPosition(pos.x, pos.y) |
1510 action_block.Input = self.Input.Clone(action_block) |
1510 action_block.Input = self.Input.Clone(action_block) |
1511 return action_block |
1511 return action_block |