diff -r add8e391e00c -r 40b91ba978db Viewer.py --- a/Viewer.py Tue Nov 13 17:21:30 2007 +0100 +++ b/Viewer.py Fri Nov 16 17:43:32 2007 +0100 @@ -67,7 +67,7 @@ message.ShowModal() message.Destroy() elif values[1] in ["function", "functionBlock", "program"]: - name, type = self.ParentWindow.Controler.GetCurrentElementEditingType() + name, type = self.ParentWindow.Controler.GetEditedElementType(self.TagName) if name == values[0]: message = wx.MessageDialog(self.ParentWindow, "\"%s\" can't use itself!"%name, "Error", wx.OK|wx.ICON_ERROR) message.ShowModal() @@ -93,31 +93,53 @@ width, height = block.GetMinSize() block.SetSize(width, height) self.ParentWindow.AddBlock(block) - self.ParentWindow.Controler.AddCurrentElementEditingBlock(id, values[0], blockname) + self.ParentWindow.Controler.AddEditedElementBlock(self.TagName, id, values[0], blockname) self.ParentWindow.RefreshBlockModel(block) self.ParentWindow.RefreshBuffer() self.ParentWindow.RefreshScrollBars() self.ParentWindow.ParentWindow.RefreshEditor() self.ParentWindow.Refresh() elif values[1] != "location": - id = self.ParentWindow.GetNewId() - if values[1] == "Output": - var_type = OUTPUT - elif values[1] == "InOut": - var_type = INPUT - else: - var_type = INPUT - variable = FBD_Variable(self.ParentWindow, var_type, values[0], values[2], id) - variable.SetPosition(x, y) - width, height = variable.GetMinSize() - variable.SetSize(width, height) - self.ParentWindow.AddBlock(variable) - self.ParentWindow.Controler.AddCurrentElementEditingVariable(id, var_type) - self.ParentWindow.RefreshVariableModel(variable) - self.ParentWindow.RefreshBuffer() - self.ParentWindow.RefreshScrollBars() - self.ParentWindow.Refresh() + if values[3] == self.ParentWindow.GetTagName(): + id = self.ParentWindow.GetNewId() + if values[1] == "Output": + var_type = OUTPUT + elif values[1] == "InOut": + var_type = INPUT + else: + var_type = INPUT + variable = FBD_Variable(self.ParentWindow, var_type, values[0], values[2], id) + variable.SetPosition(x, y) + width, height = variable.GetMinSize() + variable.SetSize(width, height) + self.ParentWindow.AddBlock(variable) + self.ParentWindow.Controler.AddEditedElementVariable(self.TagName, id, var_type) + self.ParentWindow.RefreshVariableModel(variable) + self.ParentWindow.RefreshBuffer() + self.ParentWindow.RefreshScrollBars() + self.ParentWindow.Refresh() + else: + message = wx.MessageDialog(self.ParentWindow, "Variable don't belong to this POU!", "Error", wx.OK|wx.ICON_ERROR) + message.ShowModal() + message.Destroy() +if wx.VERSION >= (2, 8, 0): + import wx.aui + + class MDIViewer(wx.aui.AuiMDIChildFrame): + def __init__(self, parent, tagname, window, controler): + wx.aui.AuiMDIChildFrame.__init__(self, parent, -1, title = "") + + sizer = wx.BoxSizer(wx.HORIZONTAL) + + self.Viewer = Viewer(self, tagname, window, controler) + + sizer.AddWindow(self.Viewer, 1, border=0, flag=wx.GROW) + + self.SetSizer(sizer) + + def GetViewer(self): + return self.Viewer """ Class that implements a Viewer based on a wx.ScrolledWindow for drawing and @@ -197,7 +219,7 @@ self._init_coll_ContextualMenu_Items(self.ContextualMenu) # Create a new Viewer - def __init__(self, parent, window, controler): + def __init__(self, parent, tagname, window, controler): wx.ScrolledWindow.__init__(self, parent, pos=wx.Point(0, 0), size=wx.Size(0, 0), style=wx.SUNKEN_BORDER | wx.HSCROLL | wx.VSCROLL) self._init_menus() @@ -209,6 +231,7 @@ #self.Scaling = (8, 8) self.DrawGrid = True self.current_id = 0 + self.TagName = tagname # Initialize Block, Wire and Comment numbers self.block_id = self.wire_id = self.comment_id = 0 @@ -235,6 +258,15 @@ self.Bind(wx.EVT_SCROLLWIN, self.OnMoveWindow) self.Bind(wx.EVT_SIZE, self.OnMoveWindow) + def SetTagName(self, tagname): + self.TagName = tagname + + def GetTagName(self): + return self.TagName + + def IsViewing(self, tagname): + return self.TagName == tagname + # Returns a new id def GetNewId(self): self.current_id += 1 @@ -314,15 +346,6 @@ self.Comments = {} self.SelectedElement = None - # Verify wires type compatibility - def VerifyVariableTypeCompatibility(self): - to_delete = [] - for wire in self.Wires: - if not wire.IsConnectedCompatible(): - to_delete.append(wire) - for wire in to_delete: - wire.Delete() - # Remove all elements def CleanView(self): for block in self.Blocks.keys(): @@ -369,10 +392,18 @@ ids = [] # Load Blocks until they are all loaded while instance: - instance = self.Controler.GetCurrentElementEditingInstanceInfos(exclude=ids) + instance = self.Controler.GetEditedElementInstanceInfos(self.TagName, exclude=ids) if instance: self.loadInstance(instance, ids) self.RefreshScrollBars() + + to_delete = [] + for wire in self.Wires: + if not wire.IsConnectedCompatible(): + to_delete.append(wire) + for wire in to_delete: + wire.Delete() + self.Refresh(False) def RefreshScrollBars(self): @@ -637,7 +668,7 @@ refLocalId = link["refLocalId"] if refLocalId != None: if refLocalId not in ids: - new_instance = self.Controler.GetCurrentElementEditingInstanceInfos(refLocalId) + new_instance = self.Controler.GetEditedElementInstanceInfos(self.TagName, refLocalId) if new_instance: self.loadInstance(new_instance, ids) connected = self.FindElementById(refLocalId) @@ -707,7 +738,7 @@ def PopupBlockMenu(self, connector = None): if connector is not None and connector.IsCompatible("BOOL"): - type = self.Controler.GetCurrentElementEditingType() + type = self.Controler.GetEditedElementType(self.TagName) self.ContextualMenu.Enable(ID_FBDVIEWERCONTEXTUALMENUITEMS0, True) self.ContextualMenu.Enable(ID_FBDVIEWERCONTEXTUALMENUITEMS1, True) self.ContextualMenu.Enable(ID_FBDVIEWERCONTEXTUALMENUITEMS2, type != "function") @@ -836,12 +867,12 @@ event.Skip() def OnClearExecutionOrderMenu(self, event): - self.Controler.ClearCurrentExecutionOrder() + self.Controler.ClearEditedElementExecutionOrder(self.TagName) self.RefreshBuffer() self.RefreshView() def OnResetExecutionOrderMenu(self, event): - self.Controler.ResetCurrentExecutionOrder() + self.Controler.ResetEditedElementExecutionOrder(self.TagName) self.RefreshBuffer() self.RefreshView() @@ -1113,9 +1144,9 @@ def AddNewBlock(self, bbox): dialog = BlockPropertiesDialog(self.ParentWindow) - dialog.SetBlockList(self.Controler.GetBlockTypes()) + dialog.SetBlockList(self.Controler.GetBlockTypes(self.TagName)) dialog.SetPouNames(self.Controler.GetProjectPouNames()) - dialog.SetPouElementNames(self.Controler.GetCurrentElementEditingVariables()) + dialog.SetPouElementNames(self.Controler.GetEditedElementVariables(self.TagName)) dialog.SetMinBlockSize((bbox.width, bbox.height)) if dialog.ShowModal() == wx.ID_OK: id = self.GetNewId() @@ -1127,7 +1158,7 @@ block.SetPosition(bbox.x, bbox.y) block.SetSize(values["width"], values["height"]) self.AddBlock(block) - self.Controler.AddCurrentElementEditingBlock(id, values["type"], values.get("name", None)) + self.Controler.AddEditedElementBlock(self.TagName, id, values["type"], values.get("name", None)) self.RefreshBlockModel(block) self.RefreshBuffer() self.RefreshScrollBars() @@ -1139,14 +1170,14 @@ dialog = VariablePropertiesDialog(self.ParentWindow) dialog.SetMinVariableSize((bbox.width, bbox.height)) varlist = [] - vars = self.Controler.GetCurrentElementEditingInterfaceVars() + vars = self.Controler.GetEditedElementInterfaceVars(self.TagName) if vars: for var in vars: if var["Edit"]: varlist.append((var["Name"], var["Class"], var["Type"])) - returntype = self.Controler.GetCurrentElementEditingInterfaceReturnType() + returntype = self.Controler.GetEditedElementInterfaceReturnType(self.TagName) if returntype: - varlist.append((self.Controler.GetCurrentElementEditingName(), "Output", returntype)) + varlist.append((self.Controler.GetEditedElementName(self.TagName), "Output", returntype)) dialog.SetVariables(varlist) if dialog.ShowModal() == wx.ID_OK: id = self.GetNewId() @@ -1155,7 +1186,7 @@ variable.SetPosition(bbox.x, bbox.y) variable.SetSize(values["width"], values["height"]) self.AddBlock(variable) - self.Controler.AddCurrentElementEditingVariable(id, values["type"]) + self.Controler.AddEditedElementVariable(self.TagName, id, values["type"]) self.RefreshVariableModel(variable) self.RefreshBuffer() self.RefreshScrollBars() @@ -1172,7 +1203,7 @@ connection.SetPosition(bbox.x, bbox.y) connection.SetSize(values["width"], values["height"]) self.AddBlock(connection) - self.Controler.AddCurrentElementEditingConnection(id, values["type"]) + self.Controler.AddEditedElementConnection(self.TagName, id, values["type"]) self.RefreshConnectionModel(connection) self.RefreshBuffer() self.RefreshScrollBars() @@ -1192,7 +1223,7 @@ min_width, min_height = comment.GetMinSize() comment.SetSize(max(min_width,bbox.width),max(min_height,bbox.height)) self.AddComment(comment) - self.Controler.AddCurrentElementEditingComment(id) + self.Controler.AddEditedElementComment(self.TagName, id) self.RefreshCommentModel(comment) self.RefreshBuffer() self.RefreshScrollBars() @@ -1202,7 +1233,7 @@ def AddNewContact(self, bbox): dialog = LDElementDialog(self.ParentWindow, "contact") varlist = [] - vars = self.Controler.GetCurrentElementEditingInterfaceVars() + vars = self.Controler.GetEditedElementInterfaceVars(self.TagName) if vars: for var in vars: if var["Class"] != "Output" and var["Type"] == "BOOL": @@ -1217,7 +1248,7 @@ contact.SetPosition(bbox.x, bbox.y) contact.SetSize(values["width"], values["height"]) self.AddBlock(contact) - self.Controler.AddCurrentElementEditingContact(id) + self.Controler.AddEditedElementContact(self.TagName, id) self.RefreshContactModel(contact) self.RefreshBuffer() self.RefreshScrollBars() @@ -1227,14 +1258,14 @@ def AddNewCoil(self, bbox): dialog = LDElementDialog(self.ParentWindow, "coil") varlist = [] - vars = self.Controler.GetCurrentElementEditingInterfaceVars() + vars = self.Controler.GetEditedElementInterfaceVars(self.TagName) if vars: for var in vars: if var["Class"] != "Input" and var["Type"] == "BOOL": varlist.append(var["Name"]) - returntype = self.Controler.GetCurrentElementEditingInterfaceReturnType() + returntype = self.Controler.GetEditedElementInterfaceReturnType(self.TagName) if returntype == "BOOL": - varlist.append(self.Controler.GetCurrentElementEditingName()) + varlist.append(self.Controler.GetEditedElementName(self.TagName)) dialog.SetVariables(varlist) dialog.SetValues({"name":"","type":COIL_NORMAL}) dialog.SetElementSize((bbox.width, bbox.height)) @@ -1245,7 +1276,7 @@ coil.SetPosition(bbox.x, bbox.y) coil.SetSize(values["width"], values["height"]) self.AddBlock(coil) - self.Controler.AddCurrentElementEditingCoil(id) + self.Controler.AddEditedElementCoil(self.TagName, id) self.RefreshCoilModel(coil) self.RefreshBuffer() self.RefreshScrollBars() @@ -1262,7 +1293,7 @@ powerrail.SetPosition(bbox.x, bbox.y) powerrail.SetSize(values["width"], values["height"]) self.AddBlock(powerrail) - self.Controler.AddCurrentElementEditingPowerRail(id, values["type"]) + self.Controler.AddEditedElementPowerRail(self.TagName, id, values["type"]) self.RefreshPowerRailModel(powerrail) self.RefreshBuffer() self.RefreshScrollBars() @@ -1272,7 +1303,7 @@ def AddNewStep(self, bbox, initial = False): dialog = StepContentDialog(self.ParentWindow, initial) dialog.SetPouNames(self.Controler.GetProjectPouNames()) - dialog.SetVariables(self.Controler.GetCurrentElementEditingInterfaceVars()) + dialog.SetVariables(self.Controler.GetEditedElementInterfaceVars(self.TagName)) dialog.SetStepNames([block.GetName() for block in self.Blocks if isinstance(block, SFC_Step)]) dialog.SetMinStepSize((bbox.width, bbox.height)) if dialog.ShowModal() == wx.ID_OK: @@ -1295,7 +1326,7 @@ min_width, min_height = step.GetMinSize() step.SetSize(max(bbox.width, min_width), max(bbox.height, min_height)) self.AddBlock(step) - self.Controler.AddCurrentElementEditingStep(id) + self.Controler.AddEditedElementStep(self.TagName, id) self.RefreshStepModel(step) self.RefreshBuffer() self.RefreshScrollBars() @@ -1304,7 +1335,7 @@ def AddNewTransition(self, bbox): dialog = TransitionContentDialog(self.ParentWindow, self.GetDrawingMode() == FREEDRAWING_MODE) - dialog.SetTransitions(self.Controler.GetCurrentElementEditingTransitions()) + dialog.SetTransitions(self.Controler.GetEditedElementTransitions(self.TagName)) if dialog.ShowModal() == wx.ID_OK: id = self.GetNewId() values = dialog.GetValues() @@ -1313,7 +1344,7 @@ min_width, min_height = transition.GetMinSize() transition.SetSize(max(bbox.width, min_width), max(bbox.height, min_height)) self.AddBlock(transition) - self.Controler.AddCurrentElementEditingTransition(id) + self.Controler.AddEditedElementTransition(self.TagName, id) self.RefreshTransitionModel(transition) self.RefreshBuffer() self.RefreshScrollBars() @@ -1331,7 +1362,7 @@ min_width, min_height = divergence.GetMinSize(True) divergence.SetSize(max(bbox.width, min_width), max(bbox.height, min_height)) self.AddBlock(divergence) - self.Controler.AddCurrentElementEditingDivergence(id, values["type"]) + self.Controler.AddEditedElementDivergence(self.TagName, id, values["type"]) self.RefreshDivergenceModel(divergence) self.RefreshBuffer() self.RefreshScrollBars() @@ -1352,7 +1383,7 @@ min_width, min_height = jump.GetMinSize() jump.SetSize(max(bbox.width, min_width), max(bbox.height, min_height)) self.AddBlock(jump) - self.Controler.AddCurrentElementEditingJump(id) + self.Controler.AddEditedElementJump(self.TagName, id) self.RefreshJumpModel(jump) self.RefreshBuffer() self.RefreshScrollBars() @@ -1362,8 +1393,8 @@ def AddNewActionBlock(self, bbox): dialog = ActionBlockDialog(self.ParentWindow) dialog.SetQualifierList(self.Controler.GetQualifierTypes()) - dialog.SetActionList(self.Controler.GetCurrentElementEditingActions()) - dialog.SetVariableList(self.Controler.GetCurrentElementEditingInterfaceVars()) + dialog.SetActionList(self.Controler.GetEditedElementActions(self.TagName)) + dialog.SetVariableList(self.Controler.GetEditedElementInterfaceVars(self.TagName)) if dialog.ShowModal() == wx.ID_OK: actions = dialog.GetValues() id = self.GetNewId() @@ -1372,7 +1403,7 @@ min_width, min_height = actionblock.GetMinSize() actionblock.SetSize(max(bbox.width, min_width), max(bbox.height, min_height)) self.AddBlock(actionblock) - self.Controler.AddCurrentElementEditingActionBlock(id) + self.Controler.AddEditedElementActionBlock(self.TagName, id) self.RefreshActionBlockModel(actionblock) self.RefreshBuffer() self.RefreshScrollBars() @@ -1385,9 +1416,9 @@ def EditBlockContent(self, block): dialog = BlockPropertiesDialog(self.ParentWindow) - dialog.SetBlockList(self.Controler.GetBlockTypes()) + dialog.SetBlockList(self.Controler.GetBlockTypes(self.TagName)) dialog.SetPouNames(self.Controler.GetProjectPouNames()) - variable_names = self.Controler.GetCurrentElementEditingVariables() + variable_names = self.Controler.GetEditedElementVariables(self.TagName) if block.GetName() != "": variable_names.remove(block.GetName()) dialog.SetPouElementNames(variable_names) @@ -1415,14 +1446,14 @@ dialog = VariablePropertiesDialog(self.ParentWindow) dialog.SetMinVariableSize(variable.GetSize()) varlist = [] - vars = self.Controler.GetCurrentElementEditingInterfaceVars() + vars = self.Controler.GetEditedElementInterfaceVars(self.TagName) if vars: for var in vars: if var["Edit"]: varlist.append((var["Name"], var["Class"], var["Type"])) - returntype = self.Controler.GetCurrentElementEditingInterfaceReturnType() + returntype = self.Controler.GetEditedElementInterfaceReturnType(self.TagName) if returntype: - varlist.append((self.Controler.GetCurrentElementEditingName(), "Output", returntype)) + varlist.append((self.Controler.GetEditedElementName(self.TagName), "Output", returntype)) dialog.SetVariables(varlist) old_values = {"name" : variable.GetName(), "type" : variable.GetType(), "executionOrder" : variable.GetExecutionOrder()} @@ -1435,8 +1466,8 @@ variable.SetExecutionOrder(new_values["executionOrder"]) if old_values["type"] != new_values["type"]: id = variable.GetId() - self.Controler.RemoveCurrentElementEditingInstance(id) - self.Controler.AddCurrentElementEditingVariable(id, new_values["type"]) + self.Controler.RemoveEditedElementInstance(self.TagName, id) + self.Controler.AddEditedElementVariable(self.TagName, id, new_values["type"]) self.RefreshVariableModel(variable) if old_values["executionOrder"] != new_values["executionOrder"]: self.RefreshView() @@ -1458,8 +1489,8 @@ connection.SetSize(values["width"], values["height"]) if old_type != values["type"]: id = connection.GetId() - self.Controler.RemoveCurrentElementEditingInstance(id) - self.Controler.AddCurrentElementEditingConnection(id, values["type"]) + self.Controler.RemoveEditedElementInstance(self.TagName, id) + self.Controler.AddEditedElementConnection(self.TagName, id, values["type"]) self.RefreshConnectionModel(connection) self.RefreshBuffer() self.RefreshScrollBars() @@ -1469,7 +1500,7 @@ def EditContactContent(self, contact): dialog = LDElementDialog(self.ParentWindow, "contact") varlist = [] - vars = self.Controler.GetCurrentElementEditingInterfaceVars() + vars = self.Controler.GetEditedElementInterfaceVars(self.TagName) if vars: for var in vars: if var["Class"] != "Output" and var["Type"] == "BOOL": @@ -1492,14 +1523,14 @@ def EditCoilContent(self, coil): dialog = LDElementDialog(self.ParentWindow, "coil") varlist = [] - vars = self.Controler.GetCurrentElementEditingInterfaceVars() + vars = self.Controler.GetEditedElementInterfaceVars(self.TagName) if vars: for var in vars: if var["Class"] != "Input" and var["Type"] == "BOOL": varlist.append(var["Name"]) - returntype = self.Controler.GetCurrentElementEditingInterfaceReturnType() + returntype = self.Controler.GetEditedElementInterfaceReturnType(self.TagName) if returntype == "BOOL": - varlist.append(self.Controler.GetCurrentElementEditingName()) + varlist.append(self.Controler.GetEditedElementName(self.TagName)) dialog.SetVariables(varlist) values = {"name" : coil.GetName(), "type" : coil.GetType()} dialog.SetValues(values) @@ -1525,8 +1556,8 @@ powerrail.SetSize(values["width"], values["height"]) if old_type != values["type"]: id = powerrail.GetId() - self.Controler.RemoveCurrentElementEditingInstance(id) - self.Controler.AddCurrentElementEditingPowerRail(id, values["type"]) + self.Controler.RemoveEditedElementInstance(self.TagName, id) + self.Controler.AddEditedElementPowerRail(self.TagName, id, values["type"]) self.RefreshPowerRailModel(powerrail) self.RefreshBuffer() self.RefreshScrollBars() @@ -1536,7 +1567,7 @@ def EditStepContent(self, step): dialog = StepContentDialog(self.ParentWindow, step.GetInitial()) dialog.SetPouNames(self.Controler.GetProjectPouNames()) - dialog.SetVariables(self.Controler.GetCurrentElementEditingInterfaceVars()) + dialog.SetVariables(self.Controler.GetEditedElementInterfaceVars(self.TagName)) dialog.SetStepNames([block.GetName() for block in self.Blocks if isinstance(block, SFC_Step) and block.GetName() != step.GetName()]) dialog.SetMinStepSize(step.GetSize()) values = {"name" : step.GetName()} @@ -1568,7 +1599,7 @@ def EditTransitionContent(self, transition): dialog = TransitionContentDialog(self.ParentWindow, self.GetDrawingMode() == FREEDRAWING_MODE) - dialog.SetTransitions(self.Controler.GetCurrentElementEditingTransitions()) + dialog.SetTransitions(self.Controler.GetEditedElementTransitions(self.TagName)) dialog.SetValues({"type":transition.GetType(),"value":transition.GetCondition(), "priority":transition.GetPriority()}) dialog.SetElementSize(transition.GetSize()) if dialog.ShowModal() == wx.ID_OK: @@ -1600,8 +1631,8 @@ def EditActionBlockContent(self, actionblock): dialog = ActionBlockDialog(self.ParentWindow) dialog.SetQualifierList(self.Controler.GetQualifierTypes()) - dialog.SetActionList(self.Controler.GetCurrentElementEditingActions()) - dialog.SetVariableList(self.Controler.GetCurrentElementEditingInterfaceVars()) + dialog.SetActionList(self.Controler.GetEditedElementActions(self.TagName)) + dialog.SetVariableList(self.Controler.GetEditedElementInterfaceVars(self.TagName)) dialog.SetValues(actionblock.GetActions()) if dialog.ShowModal() == wx.ID_OK: actions = dialog.GetValues() @@ -1639,7 +1670,7 @@ infos["x"], infos["y"] = block.GetPosition() infos["width"], infos["height"] = block.GetSize() infos["connectors"] = block.GetConnectors() - self.Controler.SetCurrentElementEditingBlockInfos(blockid, infos) + self.Controler.SetEditedElementBlockInfos(self.TagName, blockid, infos) def RefreshVariableModel(self, variable): variableid = variable.GetId() @@ -1649,7 +1680,7 @@ infos["x"], infos["y"] = variable.GetPosition() infos["width"], infos["height"] = variable.GetSize() infos["connectors"] = variable.GetConnectors() - self.Controler.SetCurrentElementEditingVariableInfos(variableid, infos) + self.Controler.SetEditedElementVariableInfos(self.TagName, variableid, infos) def RefreshConnectionModel(self, connection): connectionid = connection.GetId() @@ -1659,7 +1690,7 @@ infos["x"], infos["y"] = connection.GetPosition() infos["width"], infos["height"] = connection.GetSize() infos["connector"] = connection.GetConnector() - self.Controler.SetCurrentElementEditingConnectionInfos(connectionid, infos) + self.Controler.SetEditedElementConnectionInfos(self.TagName, connectionid, infos) def RefreshCommentModel(self, comment): commentid = comment.GetId() @@ -1667,7 +1698,7 @@ infos["content"] = comment.GetContent() infos["x"], infos["y"] = comment.GetPosition() infos["width"], infos["height"] = comment.GetSize() - self.Controler.SetCurrentElementEditingCommentInfos(commentid, infos) + self.Controler.SetEditedElementCommentInfos(self.TagName, commentid, infos) def RefreshPowerRailModel(self, powerrail): powerrailid = powerrail.GetId() @@ -1675,7 +1706,7 @@ infos["x"], infos["y"] = powerrail.GetPosition() infos["width"], infos["height"] = powerrail.GetSize() infos["connectors"] = powerrail.GetConnectors() - self.Controler.SetCurrentElementEditingPowerRailInfos(powerrailid, infos) + self.Controler.SetEditedElementPowerRailInfos(self.TagName, powerrailid, infos) def RefreshContactModel(self, contact): contactid = contact.GetId() @@ -1685,7 +1716,7 @@ infos["x"], infos["y"] = contact.GetPosition() infos["width"], infos["height"] = contact.GetSize() infos["connectors"] = contact.GetConnectors() - self.Controler.SetCurrentElementEditingContactInfos(contactid, infos) + self.Controler.SetEditedElementContactInfos(self.TagName, contactid, infos) def RefreshCoilModel(self, coil): coilid = coil.GetId() @@ -1695,7 +1726,7 @@ infos["x"], infos["y"] = coil.GetPosition() infos["width"], infos["height"] = coil.GetSize() infos["connectors"] = coil.GetConnectors() - self.Controler.SetCurrentElementEditingCoilInfos(coilid, infos) + self.Controler.SetEditedElementCoilInfos(self.TagName, coilid, infos) def RefreshStepModel(self, step): stepid = step.GetId() @@ -1705,7 +1736,7 @@ infos["x"], infos["y"] = step.GetPosition() infos["width"], infos["height"] = step.GetSize() infos["connectors"] = step.GetConnectors() - self.Controler.SetCurrentElementEditingStepInfos(stepid, infos) + self.Controler.SetEditedElementStepInfos(self.TagName, stepid, infos) def RefreshTransitionModel(self, transition): transitionid = transition.GetId() @@ -1716,7 +1747,7 @@ infos["x"], infos["y"] = transition.GetPosition() infos["width"], infos["height"] = transition.GetSize() infos["connectors"] = transition.GetConnectors() - self.Controler.SetCurrentElementEditingTransitionInfos(transitionid, infos) + self.Controler.SetEditedElementTransitionInfos(self.TagName, transitionid, infos) def RefreshDivergenceModel(self, divergence): divergenceid = divergence.GetId() @@ -1724,7 +1755,7 @@ infos["x"], infos["y"] = divergence.GetPosition() infos["width"], infos["height"] = divergence.GetSize() infos["connectors"] = divergence.GetConnectors() - self.Controler.SetCurrentElementEditingDivergenceInfos(divergenceid, infos) + self.Controler.SetEditedElementDivergenceInfos(self.TagName, divergenceid, infos) def RefreshJumpModel(self, jump): jumpid = jump.GetId() @@ -1733,7 +1764,7 @@ infos["x"], infos["y"] = jump.GetPosition() infos["width"], infos["height"] = jump.GetSize() infos["connector"] = jump.GetConnector() - self.Controler.SetCurrentElementEditingJumpInfos(jumpid, infos) + self.Controler.SetEditedElementJumpInfos(self.TagName, jumpid, infos) def RefreshActionBlockModel(self, actionblock): actionblockid = actionblock.GetId() @@ -1742,7 +1773,7 @@ infos["x"], infos["y"] = actionblock.GetPosition() infos["width"], infos["height"] = actionblock.GetSize() infos["connector"] = actionblock.GetConnector() - self.Controler.SetCurrentElementEditingActionBlockInfos(actionblockid, infos) + self.Controler.SetEditedElementActionBlockInfos(self.TagName, actionblockid, infos) #------------------------------------------------------------------------------- @@ -1758,7 +1789,7 @@ elements.append(element) block.Clean() self.RemoveBlock(block) - self.Controler.RemoveCurrentElementEditingInstance(block.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, block.GetId()) for element in elements: element.RefreshModel() wx.CallAfter(self.ParentWindow.RefreshEditor) @@ -1771,7 +1802,7 @@ elements = [] variable.Clean() self.RemoveBlock(variable) - self.Controler.RemoveCurrentElementEditingInstance(variable.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, variable.GetId()) for element in elements: element.RefreshModel() @@ -1782,13 +1813,13 @@ elements = [] connection.Clean() self.RemoveBlock(connection) - self.Controler.RemoveCurrentElementEditingInstance(connection.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, connection.GetId()) for element in elements: element.RefreshModel() def DeleteComment(self, comment): self.RemoveComment(comment) - self.Controler.RemoveCurrentElementEditingInstance(comment.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, comment.GetId()) def DeleteWire(self, wire): if wire in self.Wires: @@ -1803,7 +1834,7 @@ elements = connectors["output"].GetConnectedBlocks() contact.Clean() self.RemoveBlock(contact) - self.Controler.RemoveCurrentElementEditingInstance(contact.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, contact.GetId()) for element in elements: element.RefreshModel() @@ -1812,7 +1843,7 @@ elements = connectors["output"].GetConnectedBlocks() coil.Clean() self.RemoveBlock(coil) - self.Controler.RemoveCurrentElementEditingInstance(coil.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, coil.GetId()) for element in elements: element.RefreshModel() @@ -1825,7 +1856,7 @@ elements.append(element) powerrail.Clean() self.RemoveBlock(powerrail) - self.Controler.RemoveCurrentElementEditingInstance(powerrail.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, powerrail.GetId()) for element in elements: element.RefreshModel() @@ -1842,7 +1873,7 @@ elements.append(element) step.Clean() self.RemoveBlock(step) - self.Controler.RemoveCurrentElementEditingInstance(step.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, step.GetId()) for element in elements: element.RefreshModel() @@ -1855,7 +1886,7 @@ elements.append(element) transition.Clean() self.RemoveBlock(transition) - self.Controler.RemoveCurrentElementEditingInstance(transition.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, transition.GetId()) for element in elements: element.RefreshModel() @@ -1868,19 +1899,19 @@ elements.append(element) divergence.Clean() self.RemoveBlock(divergence) - self.Controler.RemoveCurrentElementEditingInstance(divergence.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, divergence.GetId()) for element in elements: element.RefreshModel() def DeleteJump(self, jump): jump.Clean() self.RemoveBlock(jump) - self.Controler.RemoveCurrentElementEditingInstance(jump.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, jump.GetId()) def DeleteActionBlock(self, actionblock): actionblock.Clean() self.RemoveBlock(actionblock) - self.Controler.RemoveCurrentElementEditingInstance(actionblock.GetId()) + self.Controler.RemoveEditedElementInstance(self.TagName, actionblock.GetId()) #------------------------------------------------------------------------------- @@ -1925,40 +1956,40 @@ block = element.Clone(id, pos) self.AddBlock(block) if isinstance(block, Comment): - self.Controler.AddCurrentElementEditingComment(id) + self.Controler.AddEditedElementComment(self.TagName, id) self.RefreshCommentModel(comment) elif isinstance(block, FBD_Block): - self.Controler.AddCurrentElementEditingBlock(id, block.GetType(), None) + self.Controler.AddEditedElementBlock(self.TagName, id, block.GetType(), None) self.RefreshBlockModel(block) elif isinstance(block, FBD_Variable): - self.Controler.AddCurrentElementEditingVariable(id, block.GetType()) + self.Controler.AddEditedElementVariable(self.TagName, id, block.GetType()) self.RefreshVariableModel(block) elif isinstance(block, FBD_Connector): - self.Controler.AddCurrentElementEditingConnection(id, block.GetType()) + self.Controler.AddEditedElementConnection(self.TagName, id, block.GetType()) self.RefreshConnectionModel(block) elif isinstance(block, LD_Contact): - self.Controler.AddCurrentElementEditingContact(id) + self.Controler.AddEditedElementContact(self.TagName, id) self.RefreshContactModel(block) elif isinstance(block, LD_Coil): - self.Controler.AddCurrentElementEditingCoil(id) + self.Controler.AddEditedElementCoil(self.TagName, id) self.RefreshCoilModel(block) elif isinstance(block, LD_PowerRail): - self.Controler.AddCurrentElementEditingPowerRail(id, block.GetType()) + self.Controler.AddEditedElementPowerRail(self.TagName, id, block.GetType()) self.RefreshPowerRailModel(block) elif isinstance(block, SFC_Step): - self.Controler.AddCurrentElementEditingStep(id) + self.Controler.AddEditedElementStep(self.TagName, id) self.RefreshStepModel(block) elif isinstance(block, SFC_Transition): - self.Controler.AddCurrentElementEditingTransition(id) + self.Controler.AddEditedElementTransition(self.TagName, id) self.RefreshTransitionModel(block) elif isinstance(block, SFC_Divergence): - self.Controler.AddCurrentElementEditingDivergence(id, block.GetType()) + self.Controler.AddEditedElementDivergence(self.TagName, id, block.GetType()) self.RefreshActionDivergenceModel(block) elif isinstance(block, SFC_Jump): - self.Controler.AddCurrentElementEditingJump(id) + self.Controler.AddEditedElementJump(self.TagName, id) self.RefreshJumpModel(block) elif isinstance(block, SFC_ActionBlock): - self.Controler.AddCurrentElementEditingActionBlock(id) + self.Controler.AddEditedElementActionBlock(self.TagName, id) self.RefreshActionBlockModel(block) return block