Beremiz.py
changeset 1282 f427352f9727
parent 1281 47131e3388f4
child 1364 e9e17d3b2849
equal deleted inserted replaced
1281:47131e3388f4 1282:f427352f9727
   148 from util.ProcessLogger import ProcessLogger
   148 from util.ProcessLogger import ProcessLogger
   149 from controls.LogViewer import LogViewer
   149 from controls.LogViewer import LogViewer
   150 from controls.CustomStyledTextCtrl import CustomStyledTextCtrl
   150 from controls.CustomStyledTextCtrl import CustomStyledTextCtrl
   151 
   151 
   152 from PLCControler import LOCATION_CONFNODE, LOCATION_MODULE, LOCATION_GROUP, LOCATION_VAR_INPUT, LOCATION_VAR_OUTPUT, LOCATION_VAR_MEMORY, ITEM_PROJECT, ITEM_RESOURCE
   152 from PLCControler import LOCATION_CONFNODE, LOCATION_MODULE, LOCATION_GROUP, LOCATION_VAR_INPUT, LOCATION_VAR_OUTPUT, LOCATION_VAR_MEMORY, ITEM_PROJECT, ITEM_RESOURCE
   153 from ProjectController import ProjectController, MATIEC_ERROR_MODEL, ITEM_CONFNODE
   153 from ProjectController import ProjectController, GetAddMenuItems, MATIEC_ERROR_MODEL, ITEM_CONFNODE
   154 
   154 
   155 
   155 
   156 MAX_RECENT_PROJECTS = 10
   156 MAX_RECENT_PROJECTS = 10
   157 
   157 
   158 if wx.Platform == '__WXMSW__':
   158 if wx.Platform == '__WXMSW__':
   328                                (wx.ID_OPEN, "open", _(u'Open'), None),
   328                                (wx.ID_OPEN, "open", _(u'Open'), None),
   329                                (wx.ID_SAVE, "save", _(u'Save'), None),
   329                                (wx.ID_SAVE, "save", _(u'Save'), None),
   330                                (wx.ID_SAVEAS, "saveas", _(u'Save As...'), None),
   330                                (wx.ID_SAVEAS, "saveas", _(u'Save As...'), None),
   331                                (wx.ID_PRINT, "print", _(u'Print'), None)])
   331                                (wx.ID_PRINT, "print", _(u'Print'), None)])
   332     
   332     
       
   333     def _RecursiveAddMenuItems(self, menu, items):
       
   334         for name, text, help, children in items:
       
   335             new_id = wx.NewId()
       
   336             if len(children) > 0:
       
   337                 new_menu = wx.Menu(title='')
       
   338                 menu.AppendMenu(new_id, text, new_menu)
       
   339                 self._RecursiveAddMenuItems(new_menu, children)
       
   340             else:
       
   341                 AppendMenu(menu, help=help, id=new_id, 
       
   342                        kind=wx.ITEM_NORMAL, text=text)
       
   343                 self.Bind(wx.EVT_MENU, self.GetAddConfNodeFunction(name), 
       
   344                           id=new_id)    
       
   345     
   333     def _init_coll_AddMenu_Items(self, parent):
   346     def _init_coll_AddMenu_Items(self, parent):
   334         IDEFrame._init_coll_AddMenu_Items(self, parent, False)
   347         IDEFrame._init_coll_AddMenu_Items(self, parent, False)
   335         
   348         
   336         # Disable add resource until matiec is able to handle multiple ressource definition
   349         # Disable add resource until matiec is able to handle multiple ressource definition
   337         #new_id = wx.NewId()
   350         #new_id = wx.NewId()
   338         #AppendMenu(parent, help='', id=new_id,
   351         #AppendMenu(parent, help='', id=new_id,
   339         #          kind=wx.ITEM_NORMAL, text=_(u'&Resource'))
   352         #          kind=wx.ITEM_NORMAL, text=_(u'&Resource'))
   340         #self.Bind(wx.EVT_MENU, self.AddResourceMenu, id=new_id)
   353         #self.Bind(wx.EVT_MENU, self.AddResourceMenu, id=new_id)
   341         
   354         
   342         for name, XSDClass, help in ProjectController.CTNChildrenTypes:
   355         self._RecursiveAddMenuItems(parent, GetAddMenuItems())
   343             new_id = wx.NewId()
       
   344             AppendMenu(parent, help='', id=new_id, 
       
   345                        kind=wx.ITEM_NORMAL, text=help)
       
   346             self.Bind(wx.EVT_MENU, self.GetAddConfNodeFunction(name), id=new_id)
       
   347     
   356     
   348     def _init_coll_HelpMenu_Items(self, parent):
   357     def _init_coll_HelpMenu_Items(self, parent):
   349         parent.Append(help='', id=wx.ID_ABOUT,
   358         parent.Append(help='', id=wx.ID_ABOUT,
   350               kind=wx.ITEM_NORMAL, text=_(u'About'))
   359               kind=wx.ITEM_NORMAL, text=_(u'About'))
   351         self.Bind(wx.EVT_MENU, self.OnAboutMenu, id=wx.ID_ABOUT)
   360         self.Bind(wx.EVT_MENU, self.OnAboutMenu, id=wx.ID_ABOUT)