--- a/PLCOpenEditor.py Wed Sep 17 17:59:53 2008 +0200
+++ b/PLCOpenEditor.py Thu Sep 18 08:05:55 2008 +0200
@@ -1611,6 +1611,9 @@
self.Bind(wx.EVT_MENU, self.GenerateAddActionFunction(name), id=new_id)
menu.AppendSeparator()
new_id = wx.NewId()
+ AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Create a new POU from")
+ self.Bind(wx.EVT_MENU, self.OnCreatePouFromMenu, id=new_id)
+ new_id = wx.NewId()
AppendMenu(menu, help='', id=new_id, kind=wx.ITEM_NORMAL, text="Delete")
self.Bind(wx.EVT_MENU, self.OnRemovePouMenu, id=new_id)
self.PopupMenu(menu)
@@ -2187,6 +2190,20 @@
# Remove Project Elements Functions
#-------------------------------------------------------------------------------
+ def OnCreatePouFromMenu(self, event):
+ selected = self.TypesTree.GetSelection()
+ if self.TypesTree.GetPyData(selected) == ITEM_POU:
+ dialog = PouNameDialog(self, "Please enter POU name", "Create a new POU from", "", wx.OK|wx.CANCEL)
+ dialog.SetPouNames(self.Controler.GetProjectPouNames(self.Debug))
+ if dialog.ShowModal() == wx.ID_OK:
+ self.Controler.ProjectCreatePouFrom(dialog.GetValue(), self.TypesTree.GetItemText(selected))
+ self.RefreshTitle()
+ self.RefreshEditMenu()
+ self.RefreshTypesTree()
+ self.RefreshLibraryTree()
+ self.RefreshToolBar()
+ event.Skip()
+
def OnRemoveDataTypeMenu(self, event):
selected = self.TypesTree.GetSelection()
if self.TypesTree.GetPyData(selected) == ITEM_DATATYPE: