830 elif self.Mode == MODE_COMMENT: |
830 elif self.Mode == MODE_COMMENT: |
831 wx.CallAfter(self.AddNewComment, bbox) |
831 wx.CallAfter(self.AddNewComment, bbox) |
832 elif self.Mode == MODE_CONTACT: |
832 elif self.Mode == MODE_CONTACT: |
833 wx.CallAfter(self.AddNewContact, bbox) |
833 wx.CallAfter(self.AddNewContact, bbox) |
834 elif self.Mode == MODE_COIL: |
834 elif self.Mode == MODE_COIL: |
835 wx.CallAfter(self.AddNewContact, bbox) |
835 wx.CallAfter(self.AddNewCoil, bbox) |
836 elif self.Mode == MODE_POWERRAIL: |
836 elif self.Mode == MODE_POWERRAIL: |
837 wx.CallAfter(self.AddNewPowerRail, bbox) |
837 wx.CallAfter(self.AddNewPowerRail, bbox) |
838 elif self.Mode == MODE_INITIALSTEP: |
838 elif self.Mode == MODE_INITIALSTEP: |
839 wx.CallAfter(self.AddNewInitialStep, bbox) |
839 wx.CallAfter(self.AddNewInitialStep, bbox) |
840 elif self.Mode == MODE_STEP: |
840 elif self.Mode == MODE_STEP: |
946 self.Scroll(0, ypos) |
946 self.Scroll(0, ypos) |
947 elif event.ControlDown(): |
947 elif event.ControlDown(): |
948 self.Scroll(max(0, xpos - 1), ypos) |
948 self.Scroll(max(0, xpos - 1), ypos) |
949 elif self.SelectedElement: |
949 elif self.SelectedElement: |
950 self.SelectedElement.Move(-scaling[0], 0) |
950 self.SelectedElement.Move(-scaling[0], 0) |
|
951 self.SelectedElement.RefreshModel() |
951 self.RefreshBuffer() |
952 self.RefreshBuffer() |
952 self.RefreshScrollBars() |
953 self.RefreshScrollBars() |
953 self.Refresh() |
954 self.Refresh() |
954 elif keycode == wx.WXK_RIGHT: |
955 elif keycode == wx.WXK_RIGHT: |
955 if event.ControlDown() and event.ShiftDown(): |
956 if event.ControlDown() and event.ShiftDown(): |
956 self.Scroll(xmax, ypos) |
957 self.Scroll(xmax, ypos) |
957 elif event.ControlDown(): |
958 elif event.ControlDown(): |
958 self.Scroll(min(xpos + 1, xmax), ypos) |
959 self.Scroll(min(xpos + 1, xmax), ypos) |
959 elif self.SelectedElement: |
960 elif self.SelectedElement: |
960 self.SelectedElement.Move(scaling[0], 0) |
961 self.SelectedElement.Move(scaling[0], 0) |
|
962 self.SelectedElement.RefreshModel() |
961 self.RefreshBuffer() |
963 self.RefreshBuffer() |
962 self.RefreshScrollBars() |
964 self.RefreshScrollBars() |
963 self.Refresh() |
965 self.Refresh() |
964 elif keycode == wx.WXK_UP: |
966 elif keycode == wx.WXK_UP: |
965 if event.ControlDown() and event.ShiftDown(): |
967 if event.ControlDown() and event.ShiftDown(): |
966 self.Scroll(xpos, 0) |
968 self.Scroll(xpos, 0) |
967 elif event.ControlDown(): |
969 elif event.ControlDown(): |
968 self.Scroll(xpos, max(0, ypos - 1)) |
970 self.Scroll(xpos, max(0, ypos - 1)) |
969 elif self.SelectedElement: |
971 elif self.SelectedElement: |
970 self.SelectedElement.Move(0, -scaling[1]) |
972 self.SelectedElement.Move(0, -scaling[1]) |
|
973 self.SelectedElement.RefreshModel() |
971 self.RefreshBuffer() |
974 self.RefreshBuffer() |
972 self.RefreshScrollBars() |
975 self.RefreshScrollBars() |
973 self.Refresh() |
976 self.Refresh() |
974 elif keycode == wx.WXK_DOWN: |
977 elif keycode == wx.WXK_DOWN: |
975 if event.ControlDown() and event.ShiftDown(): |
978 if event.ControlDown() and event.ShiftDown(): |
976 self.Scroll(xpos, ymax) |
979 self.Scroll(xpos, ymax) |
977 elif event.ControlDown(): |
980 elif event.ControlDown(): |
978 self.Scroll(xpos, min(ypos + 1, ymax)) |
981 self.Scroll(xpos, min(ypos + 1, ymax)) |
979 elif self.SelectedElement: |
982 elif self.SelectedElement: |
980 self.SelectedElement.Move(0, scaling[1]) |
983 self.SelectedElement.Move(0, scaling[1]) |
|
984 self.SelectedElement.RefreshModel() |
981 self.RefreshBuffer() |
985 self.RefreshBuffer() |
982 self.RefreshScrollBars() |
986 self.RefreshScrollBars() |
983 self.Refresh() |
987 self.Refresh() |
984 |
988 |
985 #------------------------------------------------------------------------------- |
989 #------------------------------------------------------------------------------- |
998 else: |
1002 else: |
999 block = FBD_Block(self, values["type"], "", id, values["extension"], values["inputs"]) |
1003 block = FBD_Block(self, values["type"], "", id, values["extension"], values["inputs"]) |
1000 block.SetPosition(bbox.x, bbox.y) |
1004 block.SetPosition(bbox.x, bbox.y) |
1001 block.SetSize(values["width"], values["height"]) |
1005 block.SetSize(values["width"], values["height"]) |
1002 self.AddBlock(block) |
1006 self.AddBlock(block) |
1003 self.Controler.AddCurrentElementEditingBlock(id) |
1007 self.Controler.AddCurrentElementEditingBlock(id, values["type"], values.get("name", None)) |
1004 self.RefreshBlockModel(block) |
1008 self.RefreshBlockModel(block) |
1005 self.RefreshBuffer() |
1009 self.RefreshBuffer() |
1006 self.RefreshScrollBars() |
1010 self.RefreshScrollBars() |
|
1011 self.Parent.RefreshEditor() |
1007 self.Refresh() |
1012 self.Refresh() |
1008 dialog.Destroy() |
1013 dialog.Destroy() |
1009 |
1014 |
1010 def AddNewVariable(self, bbox): |
1015 def AddNewVariable(self, bbox): |
1011 dialog = VariablePropertiesDialog(self.Parent) |
1016 dialog = VariablePropertiesDialog(self.Parent) |
1112 coil = LD_Coil(self, values["type"], values["name"], id) |
1117 coil = LD_Coil(self, values["type"], values["name"], id) |
1113 coil.SetPosition(bbox.x, bbox.y) |
1118 coil.SetPosition(bbox.x, bbox.y) |
1114 coil.SetSize(values["width"], values["height"]) |
1119 coil.SetSize(values["width"], values["height"]) |
1115 self.AddBlock(coil) |
1120 self.AddBlock(coil) |
1116 self.Controler.AddCurrentElementEditingCoil(id) |
1121 self.Controler.AddCurrentElementEditingCoil(id) |
1117 self.RefreshCoilModel(contact) |
1122 self.RefreshCoilModel(coil) |
1118 self.RefreshBuffer() |
1123 self.RefreshBuffer() |
1119 self.RefreshScrollBars() |
1124 self.RefreshScrollBars() |
1120 self.Refresh() |
1125 self.Refresh() |
1121 dialog.Destroy() |
1126 dialog.Destroy() |
1122 |
1127 |
1490 block.Clean() |
1495 block.Clean() |
1491 self.RemoveBlock(block) |
1496 self.RemoveBlock(block) |
1492 self.Controler.RemoveCurrentElementEditingInstance(block.GetId()) |
1497 self.Controler.RemoveCurrentElementEditingInstance(block.GetId()) |
1493 for element in elements: |
1498 for element in elements: |
1494 element.RefreshModel() |
1499 element.RefreshModel() |
|
1500 wx.CallAfter(self.Parent.RefreshEditor) |
1495 |
1501 |
1496 def DeleteVariable(self, variable): |
1502 def DeleteVariable(self, variable): |
1497 connectors = variable.GetConnectors() |
1503 connectors = variable.GetConnectors() |
1498 if connectors["output"]: |
1504 if connectors["output"]: |
1499 elements = connectors["output"].GetConnectedBlocks() |
1505 elements = connectors["output"].GetConnectedBlocks() |