etherlab/ConfigEditor.py
changeset 2134 6f4b08348a60
parent 2130 596e99202a15
child 2137 b65abacdbdf9
equal deleted inserted replaced
2133:ba0b2ca7db26 2134:6f4b08348a60
   559     def _create_EthercatMasterEditor(self, prnt):
   559     def _create_EthercatMasterEditor(self, prnt):
   560         self.EthercatMasterEditor = wx.ScrolledWindow(prnt, 
   560         self.EthercatMasterEditor = wx.ScrolledWindow(prnt, 
   561             style=wx.TAB_TRAVERSAL|wx.HSCROLL|wx.VSCROLL)
   561             style=wx.TAB_TRAVERSAL|wx.HSCROLL|wx.VSCROLL)
   562         self.EthercatMasterEditor.Bind(wx.EVT_SIZE, self.OnResize)
   562         self.EthercatMasterEditor.Bind(wx.EVT_SIZE, self.OnResize)
   563         
   563         
   564         main_sizer = wx.BoxSizer(wx.VERTICAL)
   564         self.EthercatMasterEditorSizer = wx.BoxSizer(wx.VERTICAL)
   565         
   565         
   566         self.NodesFilter = wx.ComboBox(self.EthercatMasterEditor,
   566         self.NodesFilter = wx.ComboBox(self.EthercatMasterEditor,
   567             style=wx.TE_PROCESS_ENTER)
   567             style=wx.TE_PROCESS_ENTER)
   568         self.Bind(wx.EVT_COMBOBOX, self.OnNodesFilterChanged, self.NodesFilter)
   568         self.Bind(wx.EVT_COMBOBOX, self.OnNodesFilterChanged, self.NodesFilter)
   569         self.Bind(wx.EVT_TEXT_ENTER, self.OnNodesFilterChanged, self.NodesFilter)
   569         self.Bind(wx.EVT_TEXT_ENTER, self.OnNodesFilterChanged, self.NodesFilter)
   618         self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGE, 
   618         self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGE, 
   619               self.OnStartupCommandsGridCellChange)
   619               self.OnStartupCommandsGridCellChange)
   620         self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_EDITOR_SHOWN, 
   620         self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_EDITOR_SHOWN, 
   621               self.OnStartupCommandsGridEditorShow)
   621               self.OnStartupCommandsGridEditorShow)
   622         
   622         
   623         second_staticbox = wx.StaticBox(self.EthercatMasterEditor, label=_("Nodes variables filter:"))
       
   624         second_staticbox_sizer = wx.StaticBoxSizer(second_staticbox, wx.VERTICAL)
       
   625         
       
   626         self.NodesVariables = MasterNodesVariablesSizer(self.EthercatMasterEditor, self.Controler)
   623         self.NodesVariables = MasterNodesVariablesSizer(self.EthercatMasterEditor, self.Controler)
   627         second_staticbox_sizer.AddSizer(self.NodesVariables, 1, border=5, flag=wx.GROW|wx.ALL)
       
   628         
   624         
   629         main_staticbox = wx.StaticBox(self.EthercatMasterEditor, label=_("Node filter:"))
   625         main_staticbox = wx.StaticBox(self.EthercatMasterEditor, label=_("Node filter:"))
   630         staticbox_sizer = wx.StaticBoxSizer(main_staticbox, wx.VERTICAL)
   626         staticbox_sizer = wx.StaticBoxSizer(main_staticbox, wx.VERTICAL)
   631         main_sizer.AddSizer(staticbox_sizer, 0, border=10, flag=wx.GROW|wx.ALL)
   627         self.EthercatMasterEditorSizer.AddSizer(staticbox_sizer, 0, border=10, flag=wx.GROW|wx.ALL)
       
   628         
   632         main_staticbox_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=6, vgap=0)
   629         main_staticbox_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=6, vgap=0)
   633         main_staticbox_sizer.AddGrowableCol(0)
   630         main_staticbox_sizer.AddGrowableCol(0)
   634         main_staticbox_sizer.AddGrowableRow(2)
   631         main_staticbox_sizer.AddGrowableRow(2)
   635         main_staticbox_sizer.AddGrowableRow(4)
   632         main_staticbox_sizer.AddGrowableRow(4)
   636         main_staticbox_sizer.AddGrowableRow(5)
   633         main_staticbox_sizer.AddGrowableRow(5)
   642               border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   639               border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   643         main_staticbox_sizer.AddSizer(startup_commands_header, 
   640         main_staticbox_sizer.AddSizer(startup_commands_header, 
   644               border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   641               border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   645         main_staticbox_sizer.AddWindow(self.StartupCommandsGrid, 1, 
   642         main_staticbox_sizer.AddWindow(self.StartupCommandsGrid, 1, 
   646               border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   643               border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
       
   644         
       
   645         second_staticbox = wx.StaticBox(self.EthercatMasterEditor, label=_("Nodes variables filter:"))
       
   646         second_staticbox_sizer = wx.StaticBoxSizer(second_staticbox, wx.VERTICAL)
       
   647         second_staticbox_sizer.AddSizer(self.NodesVariables, 1, border=5, flag=wx.GROW|wx.ALL)
       
   648         
   647         main_staticbox_sizer.AddSizer(second_staticbox_sizer, 1, 
   649         main_staticbox_sizer.AddSizer(second_staticbox_sizer, 1, 
   648             border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   650             border=5, flag=wx.GROW|wx.LEFT|wx.RIGHT|wx.BOTTOM)
   649         
   651         
   650         self.EthercatMasterEditor.SetSizer(main_sizer)
   652         self.EthercatMasterEditor.SetSizer(self.EthercatMasterEditorSizer)
   651         
   653         
   652         return self.EthercatMasterEditor
   654         return self.EthercatMasterEditor
   653 
   655 
   654     def __init__(self, parent, controler, window):
   656     def __init__(self, parent, controler, window):
   655         ConfTreeNodeEditor.__init__(self, parent, controler, window)
   657         ConfTreeNodeEditor.__init__(self, parent, controler, window)
   972     
   974     
   973     def OnResize(self, event):
   975     def OnResize(self, event):
   974         self.EthercatMasterEditor.GetBestSize()
   976         self.EthercatMasterEditor.GetBestSize()
   975         xstart, ystart = self.EthercatMasterEditor.GetViewStart()
   977         xstart, ystart = self.EthercatMasterEditor.GetViewStart()
   976         window_size = self.EthercatMasterEditor.GetClientSize()
   978         window_size = self.EthercatMasterEditor.GetClientSize()
   977         maxx, maxy = self.EthercatMasterEditor.GetMinSize()
   979         maxx, maxy = self.EthercatMasterEditorSizer.GetMinSize()
   978         posx = max(0, min(xstart, (maxx - window_size[0]) / SCROLLBAR_UNIT))
   980         posx = max(0, min(xstart, (maxx - window_size[0]) / SCROLLBAR_UNIT))
   979         posy = max(0, min(ystart, (maxy - window_size[1]) / SCROLLBAR_UNIT))
   981         posy = max(0, min(ystart, (maxy - window_size[1]) / SCROLLBAR_UNIT))
   980         self.EthercatMasterEditor.Scroll(posx, posy)
   982         self.EthercatMasterEditor.Scroll(posx, posy)
   981         self.EthercatMasterEditor.SetScrollbars(SCROLLBAR_UNIT, SCROLLBAR_UNIT, 
   983         self.EthercatMasterEditor.SetScrollbars(SCROLLBAR_UNIT, SCROLLBAR_UNIT, 
   982                 maxx / SCROLLBAR_UNIT, maxy / SCROLLBAR_UNIT, posx, posy)
   984                 maxx / SCROLLBAR_UNIT, maxy / SCROLLBAR_UNIT, posx, posy)