diff -r c89fc366bebd -r 0ffb41625592 etherlab/ConfigEditor.py --- a/etherlab/ConfigEditor.py Thu Sep 02 21:36:29 2021 +0200 +++ b/etherlab/ConfigEditor.py Thu Sep 02 22:18:14 2021 +0200 @@ -16,7 +16,7 @@ import wx import wx.grid -import wx.gizmos +import wx.adv import wx.lib.buttons from plcopen.structures import IEC_KEYWORDS, TestIdentifier @@ -81,9 +81,9 @@ self.VariablesFilter.Bind(wx.EVT_COMBOBOX, self.OnVariablesFilterChanged) self.VariablesFilter.Bind(wx.EVT_TEXT_ENTER, self.OnVariablesFilterChanged) self.VariablesFilter.Bind(wx.EVT_CHAR, self.OnVariablesFilterKeyDown) - self.AddWindow(self.VariablesFilter, flag=wx.GROW) - - self.VariablesGrid = wx.gizmos.TreeListCtrl(parent, + self.Add(self.VariablesFilter, flag=wx.GROW) + + self.VariablesGrid = wx.adv.TreeListCtrl(parent, style=wx.TR_DEFAULT_STYLE | wx.TR_ROW_LINES | wx.TR_COLUMN_LINES | @@ -91,7 +91,7 @@ wx.TR_FULL_ROW_HIGHLIGHT) self.VariablesGrid.GetMainWindow().Bind(wx.EVT_LEFT_DOWN, self.OnVariablesGridLeftClick) - self.AddWindow(self.VariablesGrid, flag=wx.GROW) + self.Add(self.VariablesGrid, flag=wx.GROW) self.Filters = [] for desc, value in VARIABLES_FILTERS: @@ -274,10 +274,10 @@ variables_label = wx.StaticText(self.EthercatNodeEditor, label=_('Variable entries:')) - main_sizer.AddWindow(variables_label, border=10, flag=wx.TOP | wx.LEFT | wx.RIGHT) + main_sizer.Add(variables_label, border=10, flag=wx.TOP | wx.LEFT | wx.RIGHT) self.NodeVariables = NodeVariablesSizer(self.EthercatNodeEditor, self.Controler) - main_sizer.AddSizer(self.NodeVariables, border=10, + main_sizer.Add(self.NodeVariables, border=10, flag=wx.GROW | wx.BOTTOM | wx.LEFT | wx.RIGHT) self.EthercatNodeEditor.SetSizer(main_sizer) @@ -310,7 +310,7 @@ self.EtherCATManagementTreebook = EtherCATManagementTreebook(self.EtherCATManagementEditor, self.Controler, self) - self.EtherCATManagermentEditor_Main_Sizer.AddSizer(self.EtherCATManagementTreebook, border=10, flag=wx.GROW) + self.EtherCATManagermentEditor_Main_Sizer.Add(self.EtherCATManagementTreebook, border=10, flag=wx.GROW) self.EtherCATManagementEditor.SetSizer(self.EtherCATManagermentEditor_Main_Sizer) return self.EtherCATManagementEditor @@ -617,7 +617,7 @@ self.MasterStateEditor_Panel = MasterStatePanelClass(self.MasterStateEditor, self.Controler) - self.MasterStateEditor_Panel_Main_Sizer.AddSizer(self.MasterStateEditor_Panel, border=10, flag=wx.GROW) + self.MasterStateEditor_Panel_Main_Sizer.Add(self.MasterStateEditor_Panel, border=10, flag=wx.GROW) self.MasterStateEditor.SetSizer(self.MasterStateEditor_Panel_Main_Sizer) return self.MasterStateEditor @@ -651,7 +651,7 @@ process_variables_label = wx.StaticText(self.EthercatMasterEditor, label=_("Process variables mapped between nodes:")) - process_variables_header.AddWindow(process_variables_label, 1, + process_variables_header.Add(process_variables_label, 1, flag=wx.ALIGN_CENTER_VERTICAL) for name, bitmap, help in [ @@ -661,14 +661,14 @@ ("DownVariableButton", "down", _("Move process variable down"))]: button = wx.lib.buttons.GenBitmapButton(self.EthercatMasterEditor, bitmap=GetBitmap(bitmap), size=wx.Size(28, 28), style=wx.NO_BORDER) - button.SetToolTipString(help) + button.SetToolTip(help) setattr(self, name, button) - process_variables_header.AddWindow(button, border=5, flag=wx.LEFT) + process_variables_header.Add(button, border=5, flag=wx.LEFT) self.ProcessVariablesGrid = CustomGrid(self.EthercatMasterEditor, style=wx.VSCROLL) self.ProcessVariablesGrid.SetMinSize(wx.Size(0, 150)) self.ProcessVariablesGrid.SetDropTarget(ProcessVariableDropTarget(self)) - self.ProcessVariablesGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGE, + self.ProcessVariablesGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGING, self.OnProcessVariablesGridCellChange) self.ProcessVariablesGrid.Bind(wx.grid.EVT_GRID_CELL_LEFT_CLICK, self.OnProcessVariablesGridCellLeftClick) @@ -678,7 +678,7 @@ startup_commands_label = wx.StaticText(self.EthercatMasterEditor, label=_("Startup service variables assignments:")) - startup_commands_header.AddWindow(startup_commands_label, 1, + startup_commands_header.Add(startup_commands_label, 1, flag=wx.ALIGN_CENTER_VERTICAL) for name, bitmap, help in [ @@ -686,14 +686,14 @@ ("DeleteCommandButton", "remove_element", _("Remove startup service variable"))]: button = wx.lib.buttons.GenBitmapButton(self.EthercatMasterEditor, bitmap=GetBitmap(bitmap), size=wx.Size(28, 28), style=wx.NO_BORDER) - button.SetToolTipString(help) + button.SetToolTip(help) setattr(self, name, button) - startup_commands_header.AddWindow(button, border=5, flag=wx.LEFT) + startup_commands_header.Add(button, border=5, flag=wx.LEFT) self.StartupCommandsGrid = CustomGrid(self.EthercatMasterEditor, style=wx.VSCROLL) self.StartupCommandsGrid.SetDropTarget(StartupCommandDropTarget(self)) self.StartupCommandsGrid.SetMinSize(wx.Size(0, 150)) - self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGE, + self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_CELL_CHANGING, self.OnStartupCommandsGridCellChange) self.StartupCommandsGrid.Bind(wx.grid.EVT_GRID_EDITOR_SHOWN, self.OnStartupCommandsGridEditorShow) @@ -702,29 +702,29 @@ main_staticbox = wx.StaticBox(self.EthercatMasterEditor, label=_("Node filter:")) staticbox_sizer = wx.StaticBoxSizer(main_staticbox, wx.VERTICAL) - self.EthercatMasterEditorSizer.AddSizer(staticbox_sizer, 0, border=10, flag=wx.GROW | wx.ALL) + self.EthercatMasterEditorSizer.Add(staticbox_sizer, 0, border=10, flag=wx.GROW | wx.ALL) main_staticbox_sizer = wx.FlexGridSizer(cols=1, hgap=0, rows=6, vgap=0) main_staticbox_sizer.AddGrowableCol(0) main_staticbox_sizer.AddGrowableRow(2) main_staticbox_sizer.AddGrowableRow(4) main_staticbox_sizer.AddGrowableRow(5) - staticbox_sizer.AddSizer(main_staticbox_sizer, 1, flag=wx.GROW) - main_staticbox_sizer.AddWindow(self.NodesFilter, border=5, flag=wx.GROW | wx.ALL) - main_staticbox_sizer.AddSizer(process_variables_header, border=5, + staticbox_sizer.Add(main_staticbox_sizer, 1, flag=wx.GROW) + main_staticbox_sizer.Add(self.NodesFilter, border=5, flag=wx.GROW | wx.ALL) + main_staticbox_sizer.Add(process_variables_header, border=5, flag=wx.GROW | wx.LEFT | wx.RIGHT | wx.BOTTOM) - main_staticbox_sizer.AddWindow(self.ProcessVariablesGrid, 1, + main_staticbox_sizer.Add(self.ProcessVariablesGrid, 1, border=5, flag=wx.GROW | wx.LEFT | wx.RIGHT | wx.BOTTOM) - main_staticbox_sizer.AddSizer(startup_commands_header, + main_staticbox_sizer.Add(startup_commands_header, border=5, flag=wx.GROW | wx.LEFT | wx.RIGHT | wx.BOTTOM) - main_staticbox_sizer.AddWindow(self.StartupCommandsGrid, 1, + main_staticbox_sizer.Add(self.StartupCommandsGrid, 1, border=5, flag=wx.GROW | wx.LEFT | wx.RIGHT | wx.BOTTOM) second_staticbox = wx.StaticBox(self.EthercatMasterEditor, label=_("Nodes variables filter:")) second_staticbox_sizer = wx.StaticBoxSizer(second_staticbox, wx.VERTICAL) - second_staticbox_sizer.AddSizer(self.NodesVariables, 1, border=5, flag=wx.GROW | wx.ALL) - - main_staticbox_sizer.AddSizer(second_staticbox_sizer, 1, + second_staticbox_sizer.Add(self.NodesVariables, 1, border=5, flag=wx.GROW | wx.ALL) + + main_staticbox_sizer.Add(second_staticbox_sizer, 1, border=5, flag=wx.GROW | wx.LEFT | wx.RIGHT | wx.BOTTOM) self.EthercatMasterEditor.SetSizer(self.EthercatMasterEditorSizer) @@ -1113,21 +1113,21 @@ ESI_files_label = wx.StaticText(parent, label=_("ESI Files:")) - self.AddWindow(ESI_files_label, border=10, + self.Add(ESI_files_label, border=10, flag=wx.TOP | wx.LEFT | wx.RIGHT) folder_tree_sizer = wx.FlexGridSizer(cols=2, hgap=5, rows=1, vgap=0) folder_tree_sizer.AddGrowableCol(0) folder_tree_sizer.AddGrowableRow(0) - self.AddSizer(folder_tree_sizer, border=10, + self.Add(folder_tree_sizer, border=10, flag=wx.GROW | wx.LEFT | wx.RIGHT) self.ESIFiles = FolderTree(parent, self.GetPath(), editable=False) self.ESIFiles.SetFilter(".xml") - folder_tree_sizer.AddWindow(self.ESIFiles, flag=wx.GROW) + folder_tree_sizer.Add(self.ESIFiles, flag=wx.GROW) buttons_sizer = wx.BoxSizer(wx.VERTICAL) - folder_tree_sizer.AddSizer(buttons_sizer, + folder_tree_sizer.Add(buttons_sizer, flag=wx.ALIGN_CENTER_VERTICAL) for idx, (name, bitmap, help, callback) in enumerate(buttons): @@ -1135,7 +1135,7 @@ bitmap=GetBitmap(bitmap), size=wx.Size(28, 28), style=wx.NO_BORDER) - button.SetToolTipString(help) + button.SetToolTip(help) setattr(self, name, button) if idx > 0: flag = wx.TOP @@ -1145,14 +1145,14 @@ callback = getattr(self, "On" + name, None) if callback is not None: parent.Bind(wx.EVT_BUTTON, callback, button) - buttons_sizer.AddWindow(button, border=10, flag=flag) + buttons_sizer.Add(button, border=10, flag=flag) modules_label = wx.StaticText(parent, label=_("Modules library:")) - self.AddSizer(modules_label, border=10, + self.Add(modules_label, border=10, flag=wx.LEFT | wx.RIGHT) - self.ModulesGrid = wx.gizmos.TreeListCtrl(parent, + self.ModulesGrid = wx.adv.TreeListCtrl(parent, style=wx.TR_DEFAULT_STYLE | wx.TR_ROW_LINES | wx.TR_COLUMN_LINES | @@ -1166,7 +1166,7 @@ self.OnModulesGridEndLabelEdit) self.ModulesGrid.GetHeaderWindow().Bind(wx.EVT_MOTION, self.OnModulesGridHeaderMotion) - self.AddWindow(self.ModulesGrid, border=10, + self.Add(self.ModulesGrid, border=10, flag=wx.GROW | wx.BOTTOM | wx.LEFT | wx.RIGHT) for colname, colsize, colalign in zip( @@ -1335,7 +1335,7 @@ if col > 0 and self.LastToolTipCol != col: self.LastToolTipCol = col _param, param_infos = self.ModuleLibrary.MODULES_EXTRA_PARAMS[col - 1] - wx.CallAfter(self.ModulesGrid.GetHeaderWindow().SetToolTipString, + wx.CallAfter(self.ModulesGrid.GetHeaderWindow().SetToolTip, param_infos["description"]) event.Skip() @@ -1359,13 +1359,14 @@ ("DeleteButton", "remove_element", _("Remove file from database"), None) ]) self.DatabaseSizer.SetControlMinSize(wx.Size(0, 0)) - main_sizer.AddSizer(self.DatabaseSizer, border=10, + main_sizer.Add(self.DatabaseSizer, border=10, flag=wx.GROW | wx.TOP | wx.LEFT | wx.RIGHT) button_sizer = self.CreateButtonSizer(wx.OK | wx.CANCEL | wx.CENTRE) - button_sizer.GetAffirmativeButton().SetLabel(_("Add file to project")) - button_sizer.GetCancelButton().SetLabel(_("Close")) - main_sizer.AddSizer(button_sizer, border=10, + # FIXME: find a way to change buttons label compatible with wxPython 4.x + # button_sizer.GetAffirmativeButton().SetLabel(_("Add file to project")) + # button_sizer.GetCancelButton().SetLabel(_("Close")) + main_sizer.Add(button_sizer, border=10, flag=wx.ALIGN_RIGHT | wx.BOTTOM | wx.LEFT | wx.RIGHT) self.SetSizer(main_sizer)