1655 new_id = wx.NewId() |
1655 new_id = wx.NewId() |
1656 AppendMenu(change_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Program") |
1656 AppendMenu(change_menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Program") |
1657 self.Bind(wx.EVT_MENU, self.GenerateChangePouTypeFunction(name, "program"), id=new_id) |
1657 self.Bind(wx.EVT_MENU, self.GenerateChangePouTypeFunction(name, "program"), id=new_id) |
1658 menu.AppendMenu(wx.NewId(), "Change POU Type To", change_menu) |
1658 menu.AppendMenu(wx.NewId(), "Change POU Type To", change_menu) |
1659 new_id = wx.NewId() |
1659 new_id = wx.NewId() |
|
1660 AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Rename") |
|
1661 self.Bind(wx.EVT_MENU, self.OnRenamePouMenu, id=new_id) |
|
1662 self.PopupMenu(menu) |
|
1663 new_id = wx.NewId() |
1660 AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Delete") |
1664 AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Delete") |
1661 self.Bind(wx.EVT_MENU, self.OnRemovePouMenu, id=new_id) |
1665 self.Bind(wx.EVT_MENU, self.OnRemovePouMenu, id=new_id) |
1662 self.PopupMenu(menu) |
1666 self.PopupMenu(menu) |
1663 elif type == ITEM_CONFIGURATION: |
1667 elif type == ITEM_CONFIGURATION: |
1664 menu = wx.Menu(title='') |
1668 menu = wx.Menu(title='') |
2210 dialog.SetPouNames(self.Controler.GetProjectPouNames(self.Debug)) |
2214 dialog.SetPouNames(self.Controler.GetProjectPouNames(self.Debug)) |
2211 dialog.SetPouElementNames(self.Controler.GetProjectPouVariables(debug = self.Debug)) |
2215 dialog.SetPouElementNames(self.Controler.GetProjectPouVariables(debug = self.Debug)) |
2212 if dialog.ShowModal() == wx.ID_OK: |
2216 if dialog.ShowModal() == wx.ID_OK: |
2213 values = dialog.GetValues() |
2217 values = dialog.GetValues() |
2214 self.Controler.ProjectAddPou(values["pouName"], values["pouType"], values["language"]) |
2218 self.Controler.ProjectAddPou(values["pouName"], values["pouType"], values["language"]) |
|
2219 selected = self.TabsOpened.GetSelection() |
|
2220 if selected != -1: |
|
2221 self.TabsOpened.GetPage(selected).RefreshView() |
2215 self.RefreshTitle() |
2222 self.RefreshTitle() |
2216 self.RefreshEditMenu() |
2223 self.RefreshEditMenu() |
2217 self.RefreshTypesTree() |
2224 self.RefreshTypesTree() |
2218 self.RefreshLibraryTree() |
2225 self.RefreshLibraryTree() |
2219 dialog.Destroy() |
2226 dialog.Destroy() |
2327 self.RefreshToolBar() |
2334 self.RefreshToolBar() |
2328 else: |
2335 else: |
2329 message = wx.MessageDialog(self, "%s is used by one or more POUs. It can't be removed!"%selected, "Error", wx.OK|wx.ICON_ERROR) |
2336 message = wx.MessageDialog(self, "%s is used by one or more POUs. It can't be removed!"%selected, "Error", wx.OK|wx.ICON_ERROR) |
2330 message.ShowModal() |
2337 message.ShowModal() |
2331 message.Destroy() |
2338 message.Destroy() |
|
2339 event.Skip() |
|
2340 |
|
2341 def OnRenamePouMenu(self, event): |
|
2342 selected = self.TypesTree.GetSelection() |
|
2343 if self.TypesTree.GetPyData(selected) == ITEM_POU: |
|
2344 wx.CallAfter(self.TypesTree.EditLabel, selected) |
2332 event.Skip() |
2345 event.Skip() |
2333 |
2346 |
2334 def OnRemovePouMenu(self, event): |
2347 def OnRemovePouMenu(self, event): |
2335 selected = self.TypesTree.GetSelection() |
2348 selected = self.TypesTree.GetSelection() |
2336 if self.TypesTree.GetPyData(selected) == ITEM_POU: |
2349 if self.TypesTree.GetPyData(selected) == ITEM_POU: |
4148 |
4161 |
4149 def RefreshButtons(self): |
4162 def RefreshButtons(self): |
4150 if getattr(self, "Table", None): |
4163 if getattr(self, "Table", None): |
4151 table_length = len(self.Table.data) |
4164 table_length = len(self.Table.data) |
4152 row_class = None |
4165 row_class = None |
4153 if table_length and self.PouIsUsed: |
4166 row_edit = True |
|
4167 if table_length > 0: |
4154 row = self.VariablesGrid.GetGridCursorRow() |
4168 row = self.VariablesGrid.GetGridCursorRow() |
4155 row_class = self.Table.GetValueByName(row, "Class") |
4169 row_edit = self.Table.GetValueByName(row, "Edit") |
|
4170 if self.PouIsUsed: |
|
4171 row_class = self.Table.GetValueByName(row, "Class") |
4156 self.AddButton.Enable(not self.PouIsUsed or self.Filter not in ["Interface", "Input", "Output", "InOut"]) |
4172 self.AddButton.Enable(not self.PouIsUsed or self.Filter not in ["Interface", "Input", "Output", "InOut"]) |
4157 self.DeleteButton.Enable(table_length > 0 and row_class not in ["Input", "Output", "InOut"]) |
4173 self.DeleteButton.Enable(table_length > 0 and row_edit and row_class not in ["Input", "Output", "InOut"]) |
4158 self.UpButton.Enable(table_length > 0 and self.Filter == "All" and row_class not in ["Input", "Output", "InOut"]) |
4174 self.UpButton.Enable(table_length > 0 and self.Filter == "All" and row_class not in ["Input", "Output", "InOut"]) |
4159 self.DownButton.Enable(table_length > 0 and self.Filter == "All" and row_class not in ["Input", "Output", "InOut"]) |
4175 self.DownButton.Enable(table_length > 0 and self.Filter == "All" and row_class not in ["Input", "Output", "InOut"]) |
4160 |
4176 |
4161 def OnAddButton(self, event): |
4177 def OnAddButton(self, event): |
4162 new_row = self.DefaultValue.copy() |
4178 new_row = self.DefaultValue.copy() |