300 else: |
300 else: |
301 if not var_name.upper() in [name.upper() for name in self.ParentWindow.Controler.GetEditedElementVariables(tagname, self.ParentWindow.Debug)]: |
301 if not var_name.upper() in [name.upper() for name in self.ParentWindow.Controler.GetEditedElementVariables(tagname, self.ParentWindow.Debug)]: |
302 self.ParentWindow.Controler.AddEditedElementPouExternalVar(tagname, values[2], var_name) |
302 self.ParentWindow.Controler.AddEditedElementPouExternalVar(tagname, values[2], var_name) |
303 self.ParentWindow.RefreshVariablePanel() |
303 self.ParentWindow.RefreshVariablePanel() |
304 self.ParentWindow.AddVariableBlock(x, y, scaling, INPUT, var_name, values[2]) |
304 self.ParentWindow.AddVariableBlock(x, y, scaling, INPUT, var_name, values[2]) |
|
305 elif values[1] == "Constant": |
|
306 self.ParentWindow.AddVariableBlock(x, y, scaling, INPUT, values[0], None) |
305 elif values[3] == tagname: |
307 elif values[3] == tagname: |
306 if values[1] == "Output": |
308 if values[1] == "Output": |
307 var_class = OUTPUT |
309 var_class = OUTPUT |
308 elif values[1] == "InOut": |
310 elif values[1] == "InOut": |
309 var_class = INPUT |
311 var_class = INPUT |
1159 specific_values["name"] = "" |
1161 specific_values["name"] = "" |
1160 element = FBD_Block(self, instance["type"], specific_values["name"], |
1162 element = FBD_Block(self, instance["type"], specific_values["name"], |
1161 instance["id"], len(connectors["inputs"]), |
1163 instance["id"], len(connectors["inputs"]), |
1162 connectors=connectors, executionControl=executionControl, |
1164 connectors=connectors, executionControl=executionControl, |
1163 executionOrder=specific_values["executionOrder"]) |
1165 executionOrder=specific_values["executionOrder"]) |
1164 element.SetPosition(instance["x"], instance["y"]) |
|
1165 element.SetSize(instance["width"], instance["height"]) |
|
1166 if isinstance(element, Comment): |
1166 if isinstance(element, Comment): |
1167 self.AddComment(element) |
1167 self.AddComment(element) |
1168 else: |
1168 else: |
1169 self.AddBlock(element) |
1169 self.AddBlock(element) |
1170 connectors = element.GetConnectors() |
1170 connectors = element.GetConnectors() |
1183 if output_connector.get("negated", False): |
1183 if output_connector.get("negated", False): |
1184 connector.SetNegated(True) |
1184 connector.SetNegated(True) |
1185 if output_connector.get("edge", "none") != "none": |
1185 if output_connector.get("edge", "none") != "none": |
1186 connector.SetEdge(output_connector["edge"]) |
1186 connector.SetEdge(output_connector["edge"]) |
1187 connector.SetPosition(wx.Point(*output_connector["position"])) |
1187 connector.SetPosition(wx.Point(*output_connector["position"])) |
|
1188 element.SetPosition(instance["x"], instance["y"]) |
|
1189 element.SetSize(instance["width"], instance["height"]) |
1188 if selection is not None and selection[0].get(instance["id"], False): |
1190 if selection is not None and selection[0].get(instance["id"], False): |
1189 self.SelectInGroup(element) |
1191 self.SelectInGroup(element) |
1190 |
1192 |
1191 def CreateWires(self, start_connector, id, links, ids, selection=None): |
1193 def CreateWires(self, start_connector, id, links, ids, selection=None): |
1192 for link in links: |
1194 for link in links: |