IDEFrame.py
changeset 989 b24c11c93766
parent 981 fc671a3e95a9
child 999 cbab4c1635bd
equal deleted inserted replaced
988:30e7571c10d0 989:b24c11c93766
   703         self.SetRefreshFunctions()
   703         self.SetRefreshFunctions()
   704     
   704     
   705     def __del__(self):
   705     def __del__(self):
   706         self.FindDialog.Destroy()
   706         self.FindDialog.Destroy()
   707     
   707     
   708     def ResetStarting(self):
       
   709         self.Starting = False
       
   710     
       
   711     def Show(self):
   708     def Show(self):
   712         wx.Frame.Show(self)
   709         wx.Frame.Show(self)
   713         wx.CallAfter(self.RestoreLastState)
   710         wx.CallAfter(self.RestoreLastState)
   714     
   711     
   715     def OnActivated(self, event):
   712     def OnActivated(self, event):
   815     def RestoreLastState(self):
   812     def RestoreLastState(self):
   816         frame_size = None
   813         frame_size = None
   817         if self.Config.HasEntry("framesize"):
   814         if self.Config.HasEntry("framesize"):
   818             frame_size = cPickle.loads(str(self.Config.Read("framesize")))
   815             frame_size = cPickle.loads(str(self.Config.Read("framesize")))
   819         
   816         
   820         self.Starting = True
       
   821         if frame_size is None:
   817         if frame_size is None:
   822             self.Maximize()
   818             self.Maximize()
   823         else:
   819         else:
   824             self.SetClientSize(frame_size)
   820             self.SetClientSize(frame_size)
   825         
   821         
  1319     def EnsureTabVisible(self, tab):
  1315     def EnsureTabVisible(self, tab):
  1320         notebook = tab.GetParent()
  1316         notebook = tab.GetParent()
  1321         notebook.SetSelection(notebook.GetPageIndex(tab))
  1317         notebook.SetSelection(notebook.GetPageIndex(tab))
  1322     
  1318     
  1323     def OnPouSelectedChanging(self, event):
  1319     def OnPouSelectedChanging(self, event):
  1324         if not self.Starting:
  1320         selected = self.TabsOpened.GetSelection()
  1325             selected = self.TabsOpened.GetSelection()
  1321         if selected >= 0:
  1326             if selected >= 0:
  1322             window = self.TabsOpened.GetPage(selected)
  1327                 window = self.TabsOpened.GetPage(selected)
  1323             if not window.IsDebugging():
  1328                 if not window.IsDebugging():
  1324                 window.ResetBuffer()
  1329                     window.ResetBuffer()
       
  1330         event.Skip()
  1325         event.Skip()
  1331     
  1326     
  1332     def OnPouSelectedChanged(self, event):
  1327     def OnPouSelectedChanged(self, event):
  1333         if not self.Starting:
  1328         selected = self.TabsOpened.GetSelection()
  1334             selected = self.TabsOpened.GetSelection()
  1329         if selected >= 0:
  1335             if selected >= 0:
  1330             window = self.TabsOpened.GetPage(selected)
  1336                 window = self.TabsOpened.GetPage(selected)
  1331             tagname = window.GetTagName()
  1337                 tagname = window.GetTagName()
  1332             if not window.IsDebugging():
  1338                 if not window.IsDebugging():
  1333                 wx.CallAfter(self.SelectProjectTreeItem, tagname)
  1339                     wx.CallAfter(self.SelectProjectTreeItem, tagname)
  1334                 wx.CallAfter(self.PouInstanceVariablesPanel.SetPouType, tagname)
  1340                     wx.CallAfter(self.PouInstanceVariablesPanel.SetPouType, tagname)
  1335                 window.RefreshView()
  1341                     window.RefreshView()
  1336                 self.EnsureTabVisible(self.LibraryPanel)
  1342                     self.EnsureTabVisible(self.LibraryPanel)
  1337             else:
  1343                 else:
  1338                 instance_path = window.GetInstancePath()
  1344                     instance_path = window.GetInstancePath()
  1339                 if tagname == "":
  1345                     if tagname == "":
  1340                     instance_path = instance_path.rsplit(".", 1)[0]
  1346                         instance_path = instance_path.rsplit(".", 1)[0]
  1341                     tagname = self.Controler.GetPouInstanceTagName(instance_path, self.EnableDebug)
  1347                         tagname = self.Controler.GetPouInstanceTagName(instance_path, self.EnableDebug)
  1342                 self.EnsureTabVisible(self.DebugVariablePanel)
  1348                     self.EnsureTabVisible(self.DebugVariablePanel)
  1343                 wx.CallAfter(self.PouInstanceVariablesPanel.SetPouType, tagname, instance_path)
  1349                     wx.CallAfter(self.PouInstanceVariablesPanel.SetPouType, tagname, instance_path)
  1344         wx.CallAfter(self._Refresh, FILEMENU, EDITMENU, DISPLAYMENU, EDITORTOOLBAR)
  1350             wx.CallAfter(self._Refresh, FILEMENU, EDITMENU, DISPLAYMENU, EDITORTOOLBAR)
       
  1351         event.Skip()
  1345         event.Skip()
  1352         
  1346         
  1353     def RefreshEditor(self):
  1347     def RefreshEditor(self):
  1354         selected = self.TabsOpened.GetSelection()
  1348         selected = self.TabsOpened.GetSelection()
  1355         if selected >= 0:
  1349         if selected >= 0: