objdictgen/networkedit.py
changeset 271 2f286d3fc7f6
parent 265 36cc4c87cdaa
child 273 58b39f97e352
equal deleted inserted replaced
270:178030c1dff8 271:2f286d3fc7f6
   318               style=wx.DEFAULT_FRAME_STYLE, title='Networkedit')
   318               style=wx.DEFAULT_FRAME_STYLE, title='Networkedit')
   319         self._init_utils()
   319         self._init_utils()
   320         self.SetClientSize(wx.Size(1000, 700))
   320         self.SetClientSize(wx.Size(1000, 700))
   321         self.SetMenuBar(self.menuBar1)
   321         self.SetMenuBar(self.menuBar1)
   322         self.Bind(wx.EVT_CLOSE, self.OnCloseFrame, id=ID_NETWORKEDIT)
   322         self.Bind(wx.EVT_CLOSE, self.OnCloseFrame, id=ID_NETWORKEDIT)
       
   323         if not self.ModeSolo:
       
   324             self.Bind(wx.EVT_MENU, self.OnSaveProjectMenu, id=ID_NETWORKEDITFILEMENUITEMS1)
       
   325             accel = wx.AcceleratorTable([wx.AcceleratorEntry(wx.ACCEL_CTRL, 83, ID_NETWORKEDITFILEMENUITEMS1)])
       
   326             self.SetAcceleratorTable(accel)
   323 
   327 
   324         self.NetworkNodes = wx.Notebook(id=ID_NETWORKEDITNETWORKNODES,
   328         self.NetworkNodes = wx.Notebook(id=ID_NETWORKEDITNETWORKNODES,
   325               name='NetworkNodes', parent=self, pos=wx.Point(0, 0),
   329               name='NetworkNodes', parent=self, pos=wx.Point(0, 0),
   326               size=wx.Size(0, 0), style=wx.NB_LEFT)
   330               size=wx.Size(0, 0), style=wx.NB_LEFT)
   327         self.NetworkNodes.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED,
   331         self.NetworkNodes.Bind(wx.EVT_NOTEBOOK_PAGE_CHANGED,
   333         self.SetStatusBar(self.HelpBar)
   337         self.SetStatusBar(self.HelpBar)
   334 
   338 
   335     def __init__(self, parent, nodelist = None):
   339     def __init__(self, parent, nodelist = None):
   336         self.ModeSolo = nodelist == None
   340         self.ModeSolo = nodelist == None
   337         self._init_ctrls(parent)
   341         self._init_ctrls(parent)
   338         self.Parent = parent
       
   339         self.HtmlFrameOpened = []
   342         self.HtmlFrameOpened = []
   340         self.BusId = None
   343         self.BusId = None
   341         
   344         
   342         if self.ModeSolo:
   345         if self.ModeSolo:
   343             self.Manager = NodeManager()
   346             self.Manager = NodeManager()
   352             self.NodeList = nodelist
   355             self.NodeList = nodelist
   353             self.Manager = self.NodeList.GetManager()
   356             self.Manager = self.NodeList.GetManager()
   354             self.NodeList.SetCurrentSelected(0)
   357             self.NodeList.SetCurrentSelected(0)
   355             self.RefreshNetworkNodes()
   358             self.RefreshNetworkNodes()
   356             self.RefreshProfileMenu()
   359             self.RefreshProfileMenu()
       
   360             self.NetworkNodes.SetFocus()
   357         
   361         
   358         self.RefreshBufferState()
   362         self.RefreshBufferState()
   359         self.RefreshTitle()
   363         self.RefreshTitle()
   360         self.RefreshMainMenu()
   364         self.RefreshMainMenu()
   361 
   365 
   373             return window.GetIndex()
   377             return window.GetIndex()
   374         else:
   378         else:
   375             return 0
   379             return 0
   376 
   380 
   377     def OnCloseFrame(self, event):
   381     def OnCloseFrame(self, event):
   378         if not self.ModeSolo:
   382         if not self.ModeSolo and getattr(self, "_onclose", None) != None:
   379             self.Parent.CloseEditor(self.BusId)
   383             self._onclose()
       
   384         event.Skip()
       
   385 
       
   386     def OnChar(self, event):
       
   387         if event.ControlDown() and event.GetKeyCode() == 83 and getattr(self, "_onsave", None) != None:
       
   388             self._onsave()
   380         event.Skip()
   389         event.Skip()
   381 
   390 
   382     def GetNoteBook(self):
   391     def GetNoteBook(self):
   383         return self.NetworkNodes
   392         return self.NetworkNodes
   384 
   393 
   488                     message.Destroy()
   497                     message.Destroy()
   489         dialog.Destroy()
   498         dialog.Destroy()
   490         event.Skip()
   499         event.Skip()
   491 
   500 
   492     def OnSaveProjectMenu(self, event):
   501     def OnSaveProjectMenu(self, event):
   493         result = self.NodeList.SaveProject()
   502         if not self.ModeSolo and getattr(self, "_onsave", None) != None:
   494         if result:
   503             self._onsave()
   495             message = wx.MessageDialog(self, result, "Error", wx.OK|wx.ICON_ERROR)
   504         else:
   496             message.ShowModal()
   505             result = self.NodeList.SaveProject()
   497             message.Destroy()
   506             if result:
       
   507                 message = wx.MessageDialog(self, result, "Error", wx.OK|wx.ICON_ERROR)
       
   508                 message.ShowModal()
       
   509                 message.Destroy()
   498         event.Skip()
   510         event.Skip()
   499 
   511 
   500     def OnCloseProjectMenu(self, event):
   512     def OnCloseProjectMenu(self, event):
   501         if self.NodeList:
   513         if self.NodeList:
   502             if self.NodeList.HasChanged():
   514             if self.NodeList.HasChanged():