--- a/graphics/FBD_Objects.py Tue Apr 23 12:50:53 2013 +0200
+++ b/graphics/FBD_Objects.py Tue Apr 23 21:46:15 2013 +0200
@@ -263,43 +263,49 @@
self.Pen = MiterPen(self.Colour)
# Extract the inputs properties and create or modify the corresponding connector
- for idx, (input_name, input_type, input_modifier) in enumerate(inputs):
- if idx < len(self.Inputs):
- connector = self.Inputs[idx]
- connector.SetName(input_name)
- connector.SetType(input_type)
- connector = Connector(self, input_name, input_type, wx.Point(0, 0), WEST, onlyone = True)
- self.Inputs.append(connector)
+ for input_name, input_type, input_modifier in inputs: + connector = Connector(self, input_name, input_type, wx.Point(0, 0), WEST, onlyone = True) if input_modifier == "negated":
connector.SetNegated(True)
elif input_modifier != "none":
connector.SetEdge(input_modifier)
- for i in xrange(idx + 1, len(self.Inputs)):
- self.Inputs[i].UnConnect(delete = True)
- self.Inputs = self.Inputs[:idx + 1]
+ for input in self.Inputs: + if input.GetName() == input_name: + wires = input.GetWires()[:] + connector.Connect(wire) + input_connectors.append(connector) + for input in self.Inputs: + input.UnConnect(delete = True) + self.Inputs = input_connectors # Extract the outputs properties and create or modify the corresponding connector
- for idx, (output_name, output_type, output_modifier) in enumerate(outputs):
- if idx < len(self.Outputs):
- connector = self.Outputs[idx]
- connector.SetName(output_name)
- connector.SetType(output_type)
- connector = Connector(self, output_name, output_type, wx.Point(0, 0), EAST)
- self.Outputs.append(connector)
+ for output_name, output_type, output_modifier in outputs: + connector = Connector(self, output_name, output_type, wx.Point(0, 0), EAST) if output_modifier == "negated":
connector.SetNegated(True)
elif output_modifier != "none":
connector.SetEdge(output_modifier)
- for i in xrange(idx + 1, len(self.Outputs)):
- self.Outputs[i].UnConnect(delete = True)
- self.Outputs = self.Outputs[:idx + 1]
+ for output in self.Outputs: + if output.GetName() == output_name: + wires = output.GetWires()[:] + connector.Connect(wire) + output_connectors.append(connector) + for output in self.Outputs: + output.UnConnect(delete = True) + self.Outputs = output_connectors + for output in self.Outputs: self.RefreshBoundingBox()
--- a/graphics/GraphicCommons.py Tue Apr 23 12:50:53 2013 +0200
+++ b/graphics/GraphicCommons.py Tue Apr 23 21:46:15 2013 +0200
@@ -1695,6 +1695,10 @@
def InsertConnect(self, idx, wire, refresh = True):
if wire not in self.Wires:
self.Wires.insert(idx, wire)
+ wire[0].ConnectStartPoint(None, self) + wire[0].ConnectEndPoint(None, self) self.ParentBlock.RefreshModel(False)