PLCOpenEditor.py
changeset 618 6e48943e821e
parent 613 c487c54c1cfe
child 624 efedc9d06a59
equal deleted inserted replaced
617:1a80e0598045 618:6e48943e821e
   455             self.Panes = {}
   455             self.Panes = {}
   456             
   456             
   457             self.LeftNoteBook = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORLEFTNOTEBOOK,
   457             self.LeftNoteBook = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORLEFTNOTEBOOK,
   458                   style=wx.aui.AUI_NB_TOP|wx.aui.AUI_NB_TAB_SPLIT|wx.aui.AUI_NB_TAB_MOVE|
   458                   style=wx.aui.AUI_NB_TOP|wx.aui.AUI_NB_TAB_SPLIT|wx.aui.AUI_NB_TAB_MOVE|
   459                         wx.aui.AUI_NB_SCROLL_BUTTONS|wx.aui.AUI_NB_TAB_EXTERNAL_MOVE)
   459                         wx.aui.AUI_NB_SCROLL_BUTTONS|wx.aui.AUI_NB_TAB_EXTERNAL_MOVE)
       
   460             self.LeftNoteBook.Bind(wx.aui.EVT_AUINOTEBOOK_ALLOW_DND, 
       
   461                     self.OnAllowNotebookDnD)
   460             self.AUIManager.AddPane(self.LeftNoteBook, 
   462             self.AUIManager.AddPane(self.LeftNoteBook, 
   461                   wx.aui.AuiPaneInfo().Caption(_("Project")).Left().Layer(1).
   463                   wx.aui.AuiPaneInfo().Caption(_("Project")).Left().Layer(1).
   462                   BestSize(wx.Size(300, 500)).CloseButton(False))
   464                   BestSize(wx.Size(300, 500)).CloseButton(False))
   463         
   465         
   464             self.BottomNoteBook = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORBOTTOMNOTEBOOK,
   466             self.BottomNoteBook = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORBOTTOMNOTEBOOK,
   465                   style=wx.aui.AUI_NB_TOP|wx.aui.AUI_NB_TAB_SPLIT|wx.aui.AUI_NB_TAB_MOVE|
   467                   style=wx.aui.AUI_NB_TOP|wx.aui.AUI_NB_TAB_SPLIT|wx.aui.AUI_NB_TAB_MOVE|
   466                         wx.aui.AUI_NB_SCROLL_BUTTONS|wx.aui.AUI_NB_TAB_EXTERNAL_MOVE)
   468                         wx.aui.AUI_NB_SCROLL_BUTTONS|wx.aui.AUI_NB_TAB_EXTERNAL_MOVE)
       
   469             self.BottomNoteBook.Bind(wx.aui.EVT_AUINOTEBOOK_ALLOW_DND, 
       
   470                     self.OnAllowNotebookDnD)
   467             self.AUIManager.AddPane(self.BottomNoteBook, 
   471             self.AUIManager.AddPane(self.BottomNoteBook, 
   468                   wx.aui.AuiPaneInfo().Bottom().Layer(0).
   472                   wx.aui.AuiPaneInfo().Bottom().Layer(0).
   469                   BestSize(wx.Size(800, 300)).CloseButton(False))
   473                   BestSize(wx.Size(800, 300)).CloseButton(False))
   470             
   474             
   471             self.RightNoteBook = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORRIGHTNOTEBOOK,
   475             self.RightNoteBook = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORRIGHTNOTEBOOK,
   472                   style=wx.aui.AUI_NB_TOP|wx.aui.AUI_NB_TAB_SPLIT|wx.aui.AUI_NB_TAB_MOVE|
   476                   style=wx.aui.AUI_NB_TOP|wx.aui.AUI_NB_TAB_SPLIT|wx.aui.AUI_NB_TAB_MOVE|
   473                         wx.aui.AUI_NB_SCROLL_BUTTONS|wx.aui.AUI_NB_TAB_EXTERNAL_MOVE)
   477                         wx.aui.AUI_NB_SCROLL_BUTTONS|wx.aui.AUI_NB_TAB_EXTERNAL_MOVE)
       
   478             self.RightNoteBook.Bind(wx.aui.EVT_AUINOTEBOOK_ALLOW_DND, 
       
   479                     self.OnAllowNotebookDnD)
   474             self.AUIManager.AddPane(self.RightNoteBook, 
   480             self.AUIManager.AddPane(self.RightNoteBook, 
   475                   wx.aui.AuiPaneInfo().Right().Layer(0).
   481                   wx.aui.AuiPaneInfo().Right().Layer(0).
   476                   BestSize(wx.Size(250, 400)).CloseButton(False))
   482                   BestSize(wx.Size(250, 400)).CloseButton(False))
   477         
   483             
   478             self.TabsOpened = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORTABSOPENED, 
   484             self.TabsOpened = wx.aui.AuiNotebook(self, ID_PLCOPENEDITORTABSOPENED, 
   479                   style=wx.aui.AUI_NB_DEFAULT_STYLE|wx.aui.AUI_NB_WINDOWLIST_BUTTON)
   485                   style=wx.aui.AUI_NB_DEFAULT_STYLE|wx.aui.AUI_NB_WINDOWLIST_BUTTON)
   480             self.TabsOpened.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CHANGING,
   486             self.TabsOpened.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CHANGING,
   481                     self.OnPouSelectedChanged)
   487                     self.OnPouSelectedChanged)
   482             self.TabsOpened.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSE,
   488             self.TabsOpened.Bind(wx.aui.EVT_AUINOTEBOOK_PAGE_CLOSE,
  1173     
  1179     
  1174     def OnPageDragged(self, event):
  1180     def OnPageDragged(self, event):
  1175         wx.CallAfter(self.RefreshTabCtrlEvent)
  1181         wx.CallAfter(self.RefreshTabCtrlEvent)
  1176         event.Skip()
  1182         event.Skip()
  1177     
  1183     
       
  1184     def OnAllowNotebookDnD(self, event):
       
  1185         event.Allow()
       
  1186     
  1178     def RefreshTabCtrlEvent(self):
  1187     def RefreshTabCtrlEvent(self):
  1179         if USE_AUI:
  1188         if USE_AUI:
  1180             auitabctrl = []
  1189             auitabctrl = []
  1181             for child in self.TabsOpened.GetChildren():
  1190             for child in self.TabsOpened.GetChildren():
  1182                 if isinstance(child, wx.aui.AuiTabCtrl):
  1191                 if isinstance(child, wx.aui.AuiTabCtrl):
  1198                 window.ResetBuffer()
  1207                 window.ResetBuffer()
  1199         selected = event.GetSelection()
  1208         selected = event.GetSelection()
  1200         if selected >= 0:
  1209         if selected >= 0:
  1201             window = self.TabsOpened.GetPage(selected)
  1210             window = self.TabsOpened.GetPage(selected)
  1202             if not window.IsDebugging():
  1211             if not window.IsDebugging():
  1203                 print "Is not Debugging"
       
  1204                 wx.CallAfter(self.SelectTypesTreeItem, window.GetTagName())
  1212                 wx.CallAfter(self.SelectTypesTreeItem, window.GetTagName())
  1205             else:
  1213             else:
  1206                 print "Is Debugging"
       
  1207                 wx.CallAfter(self.SelectInstancesTreeItem, self.InstancesTree.GetRootItem(), window.GetInstancePath())
  1214                 wx.CallAfter(self.SelectInstancesTreeItem, self.InstancesTree.GetRootItem(), window.GetInstancePath())
  1208             window.RefreshView()
  1215             window.RefreshView()
  1209             self._Refresh(FILEMENU, EDITMENU, DISPLAYMENU, TOOLBAR)
  1216             self._Refresh(FILEMENU, EDITMENU, DISPLAYMENU, TOOLBAR)
  1210         event.Skip()
  1217         event.Skip()
  1211 
  1218