# HG changeset patch # User Laurent Bessard # Date 1365524961 -7200 # Node ID 626de4ff4bdc9a05bbbc9d55fe5b7e94a046ae80 # Parent 93022adef055e7395c6f70b9cedc3e2b62b3c117 Fixed resource editing, removing definition of more than one resource and deletion of last resource defined diff -r 93022adef055 -r 626de4ff4bdc Beremiz.py --- a/Beremiz.py Tue Apr 09 18:17:10 2013 +0200 +++ b/Beremiz.py Tue Apr 09 18:29:21 2013 +0200 @@ -351,10 +351,13 @@ def _init_coll_AddMenu_Items(self, parent): IDEFrame._init_coll_AddMenu_Items(self, parent, False) - new_id = wx.NewId() - AppendMenu(parent, help='', id=new_id, - kind=wx.ITEM_NORMAL, text=_(u'&Resource')) - self.Bind(wx.EVT_MENU, self.AddResourceMenu, id=new_id) + + # Disable add resource until matiec is able to handle multiple ressource definition + #new_id = wx.NewId() + #AppendMenu(parent, help='', id=new_id, + # kind=wx.ITEM_NORMAL, text=_(u'&Resource')) + #self.Bind(wx.EVT_MENU, self.AddResourceMenu, id=new_id) + for name, XSDClass, help in ProjectController.CTNChildrenTypes: new_id = wx.NewId() AppendMenu(parent, help='', id=new_id, @@ -1015,7 +1018,10 @@ event.Skip() else: - IDEFrame.OnProjectTreeRightUp(self, event) + parent = self.ProjectTree.GetItemParent(item) + parent_name = self.ProjectTree.GetItemText(parent) + if item_infos["type"] != ITEM_RESOURCE or parent_name == _("Resources"): + IDEFrame.OnProjectTreeRightUp(self, event) def OnProjectTreeItemActivated(self, event): selected = event.GetItem() diff -r 93022adef055 -r 626de4ff4bdc IDEFrame.py --- a/IDEFrame.py Tue Apr 09 18:17:10 2013 +0200 +++ b/IDEFrame.py Tue Apr 09 18:29:21 2013 +0200 @@ -1826,11 +1826,15 @@ while parent_type not in [ITEM_CONFIGURATION, ITEM_PROJECT]: parent = self.ProjectTree.GetItemParent(parent) parent_type = self.ProjectTree.GetPyData(parent)["type"] + parent_name = None if parent_type == ITEM_PROJECT: - parent_name = None + config_names = self.Controler.GetProjectConfigNames() + if len(config_names) > 0: + parent_name = config_names[0] else: parent_name = self.ProjectTree.GetItemText(parent) - self.Bind(wx.EVT_MENU, self.GenerateAddResourceFunction(parent_name), id=new_id) + if parent_name is not None: + self.Bind(wx.EVT_MENU, self.GenerateAddResourceFunction(parent_name), id=new_id) else: if item_infos["type"] == ITEM_POU: