def __init__(self, parent): Panel.__init__(self, parent=parent) self.panels = {} self.currentPanelKey = 0 self.sizer = BoxSizer(VERTICAL) self.SetSizer(self.sizer)
def __init__(self, parent): Panel.__init__(self, parent) sizer = GridBagSizer(5, 5) self.SetSizer(sizer) self.__cur_po_class = None self.__create_widgets()
def __init__(self, parent): Panel.__init__(self, parent) self.main_frame = self.GetTopLevelParent() self.po_fields = None self.__create_widgets()
def __init__(self, parent): Panel.__init__(self, parent) self.main_frame = self.GetTopLevelParent() self.po_fields = None self.__create_widgets()
def __init__(self, master, size=(4, 4)): Panel.__init__(self, master) self.master = master self.sizer = GridBagSizer(*size) self.widgets = {} # holds the widgets as values. The keys are tuples with # three members (row, col, colspan) self.sizer.AddGrowableCol(1) self.sizer.AddGrowableRow(1) self.SetSizerAndFit(self.sizer)
def __init__(self, parent): Panel.__init__(self, parent) startButon = Button(self, label="Start Photobox", size=((300, 100))) homeSizer = BoxSizer(VERTICAL) homeSizer.AddStretchSpacer() homeSizer.Add(startButon, 0, CENTER) homeSizer.AddStretchSpacer() self.SetSizer(homeSizer)
def __init__(self, parent): # call parent class __init__() Panel.__init__(self, parent=parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=NO_BORDER, name="") # BackgroundBitmap self.BackgroundBitmap = None # bind paint event self.Bind(EVT_PAINT, self._OnPaint) # done return
def __init__(self, parent, editor_tab): Panel.__init__(self, parent) self.__editor_tab = editor_tab self.__cur_po_class = None sizer = GridBagSizer(5, 5) full_span = (1, 4) row = 0 inner_sizer = BoxSizer(HORIZONTAL) self.btn_open_test_file = Button(self, label=u'Open test file') self.btn_open_test_file.Bind(EVT_BUTTON, self.__on_open_test_file) inner_sizer.Add(self.btn_open_test_file) self.btn_create_test_file = Button(self, label=u'Create test file') self.btn_create_test_file.Bind(EVT_BUTTON, self.__on_create_test_file) inner_sizer.Add(self.btn_create_test_file) self.btn_save_test_file = Button(self, label=u'Save current file') self.btn_save_test_file.Bind(EVT_BUTTON, self.__on_save_test_file) inner_sizer.Add(self.btn_save_test_file) inner_sizer.AddStretchSpacer(1) self.btn_create_test = Button(self, label=u'Create new method/test case') self.btn_create_test.Bind(EVT_BUTTON, self.__create_method_or_test) inner_sizer.Add(self.btn_create_test) sizer.Add(inner_sizer, pos=(row, 0), span=full_span, flag=FLAG_ALL_AND_EXPAND) row += 1 self.tabs = Tabs(self, [(Table, "Fields' table")]) self.table = self.tabs.GetPage(0) self.table.Bind(EVT_GRID_SELECT_CELL, self.__on_cell_click) self.table.Bind(EVT_GRID_CELL_RIGHT_CLICK, self.__on_cell_click) sizer.Add(self.tabs, pos=(row, 0), span=full_span, flag=FLAG_ALL_AND_EXPAND) sizer.AddGrowableCol(1, 1) sizer.AddGrowableRow(1, 1) self.SetSizer(sizer)
def __init__(self, parent, style=wx.TAB_TRAVERSAL|wx.NO_BORDER): Panel.__init__(self, parent, style=style) self.textfield_filepath = TextCtrl(self, wx.ID_ANY, size=(200, 25)) self.panel_control = Panel(self, size=(200, 150), ) self.button_choose_file = Button(self.panel_control, wx.ID_ANY, 'Browse...') self.button_process = Button(self.panel_control, wx.ID_ANY, 'Process') self.Bind(wx.EVT_BUTTON, self.OnChooseFile, self.button_choose_file) self.Bind(wx.EVT_BUTTON, self.OnProcess, self.button_process) self.__init_layout() self.splitter = Splitter()
def __init__(self, parent): Panel.__init__(self, parent) self._grid_layout = GridBagSizer() self._separator1 = StaticLine(self, size=(250, 1), style=LI_HORIZONTAL) self._hierarchyBox = StaticBox(parent, label="Configurar Importação") self._grid_layout.Add(self._separator1, pos=(0, 0), flag=TOP | LEFT | BOTTOM, border=0) self._grid_layout.Add(self._hierarchyBox, pos=(1, 0), flag=TOP | LEFT | BOTTOM, border=2) self.SetSizer(self._grid_layout)
def __init__(self, parent, imagePath): Panel.__init__(self, parent) #Cor do Fundo self.BackgroundColour = ((100, 100, 100)) #Tamanhos do BitMap self._bitmap_width = 510 self._bitmap_height = 720 #Grid do BitMap self._hbox = BoxSizer(HORIZONTAL) self._grid_layout = FlexGridSizer(1, 2, 0, 10) #Lê a Imagem self._image = cv2.imread(imagePath) defaultImage = self.GetImageDataInPanelSize(self._bitmap_width, self._bitmap_height, self._image) defaultImage_wx = EmptyImage(self._bitmap_width, self._bitmap_height) defaultImage_wx.SetData( defaultImage.tostring()) # convert from cv.iplimage to wxImage defaultImage_png = defaultImage_wx.ConvertToBitmap() # png = Image(image.GetWidth(), image.GetHeight(), imageData) # png = Image(imagePath, BITMAP_TYPE_ANY).ConvertToBitmap() # test1 = StaticBitmap(self, -1, png, size=(self._bitmap_width,self._bitmap_height)) # test2 = StaticBitmap(self, -1, png, size=(self._bitmap_width,self._bitmap_height)) test1 = StaticBitmap( self, -1, defaultImage_png, (0, 0), (defaultImage_wx.GetWidth(), defaultImage_wx.GetHeight())) test2 = StaticBitmap( self, -1, defaultImage_png, (0, 0), (defaultImage_wx.GetWidth(), defaultImage_wx.GetHeight())) self._grid_layout.AddMany([(test1, 1, EXPAND), (test2, 1, EXPAND)]) self._grid_layout.AddGrowableRow(0, 1) self._hbox.Add(self._grid_layout, proportion=1, flag=ALL | EXPAND, border=0) self.SetSizer(self._hbox)
def __init__(self, parent): Panel.__init__(self, parent) hsizer = wx.BoxSizer(wx.HORIZONTAL) v_sizer = wx.BoxSizer(wx.VERTICAL) colors = [("green", 3), ("yellow", 2), ("light blue", 2), ("purple", 2)] count = 1 for color, subpanel in colors: panel = ColorPanel(self, count, color, subpanel) hsizer.Add(panel, 1, wx.EXPAND) count += 1 orange_panel = ColorPanel(self, count, "orange", 0) v_sizer.Add(hsizer, 1, wx.EXPAND) v_sizer.Add(orange_panel, 1, wx.EXPAND) self.SetSizer(v_sizer)
def __init__(self, parent, editor_tab): Panel.__init__(self, parent) self.__editor_tab = editor_tab self.__cur_po_class = None sizer = GridBagSizer(5, 5) full_span = (1, 4) row = 0 inner_sizer = BoxSizer(HORIZONTAL) self.btn_open_test_file = Button(self, label=u'Open test file') self.btn_open_test_file.Bind(EVT_BUTTON, self.__on_open_test_file) inner_sizer.Add(self.btn_open_test_file) self.btn_create_test_file = Button(self, label=u'Create test file') self.btn_create_test_file.Bind(EVT_BUTTON, self.__on_create_test_file) inner_sizer.Add(self.btn_create_test_file) self.btn_save_test_file = Button(self, label=u'Save current file') self.btn_save_test_file.Bind(EVT_BUTTON, self.__on_save_test_file) inner_sizer.Add(self.btn_save_test_file) inner_sizer.AddStretchSpacer(1) self.btn_create_test = Button(self, label=u'Create new method/test case') self.btn_create_test.Bind(EVT_BUTTON, self.__create_method_or_test) inner_sizer.Add(self.btn_create_test) sizer.Add(inner_sizer, pos=(row, 0), span=full_span, flag=FLAG_ALL_AND_EXPAND) row += 1 self.tabs = Tabs(self, [(Table, "Fields' table")]) self.table = self.tabs.GetPage(0) self.table.Bind(EVT_GRID_SELECT_CELL, self.__on_cell_click) self.table.Bind(EVT_GRID_CELL_RIGHT_CLICK, self.__on_cell_click) sizer.Add(self.tabs, pos=(row, 0), span=full_span, flag=FLAG_ALL_AND_EXPAND) sizer.AddGrowableCol(1, 1) sizer.AddGrowableRow(1, 1) self.SetSizer(sizer)
def __init__(self, parent, file_path, load_file=False): Panel.__init__(self, parent) self.grandparent = self.GetGrandParent() self.__file_path = file_path sizer = BoxSizer(VERTICAL) self.txt_test_file_path = TextCtrl(self, value=self.__file_path, style=TE_READONLY) sizer.Add(self.txt_test_file_path, 0, flag=FLAG_ALL_AND_EXPAND) self.txt_content = TextCtrl(self, style=TE_MULTILINE | HSCROLL) self.txt_content.Bind(EVT_KEY_DOWN, self.__on_text_change) if load_file: self.txt_content.LoadFile(self.__file_path) font_size = self.txt_content.GetFont().GetPointSize() self.txt_content.SetFont( Font(font_size, FONTFAMILY_TELETYPE, NORMAL, NORMAL)) sizer.Add(self.txt_content, 1, flag=FLAG_ALL_AND_EXPAND) self.SetSizer(sizer)
def __init__(self, parent, file_path, load_file=False): Panel.__init__(self, parent) self.grandparent = self.GetGrandParent() self.__file_path = file_path sizer = BoxSizer(VERTICAL) self.txt_test_file_path = TextCtrl(self, value=self.__file_path, style=TE_READONLY) sizer.Add(self.txt_test_file_path, 0, flag=FLAG_ALL_AND_EXPAND) self.txt_content = TextCtrl(self, style=TE_MULTILINE | HSCROLL) self.txt_content.Bind(EVT_KEY_DOWN, self.__on_text_change) if load_file: self.txt_content.LoadFile(self.__file_path) font_size = self.txt_content.GetFont().GetPointSize() self.txt_content.SetFont(Font(font_size, FONTFAMILY_TELETYPE, NORMAL, NORMAL)) sizer.Add(self.txt_content, 1, flag=FLAG_ALL_AND_EXPAND) self.SetSizer(sizer)
def __init__(self, parent, imagePath): Panel.__init__(self, parent) self._hbox = BoxSizer(HORIZONTAL) self._grid_layout = FlexGridSizer(1, 2, 1, 1) # self._grid_layout = GridBagSizer(2, 1) self._configurationAndImportPanel = ConfigurationAndImportPanel(self) self._bitmapPanel = BitmapPanel(self, imagePath) self._grid_layout.AddMany([(self._configurationAndImportPanel, 1, LEFT), (self._bitmapPanel, 1, EXPAND)]) self._grid_layout.AddGrowableCol(1, 1) self._grid_layout.AddGrowableRow(0, 1) self._hbox.Add(self._grid_layout, proportion=1, flag=ALL | EXPAND, border=0) self.SetSizer(self._hbox)
def __init__(self, *args, **kwargs): Panel.__init__(self, *args, **kwargs) sizer = GridBagSizer(5, 5) row = 0 col = 0 self.cb_html_output = CheckBox(self, label=u'Report in HTML') self.cb_html_output.Bind(EVT_CHECKBOX, self.__on_check) sizer.Add(self.cb_html_output, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.txt_html_report = TextCtrl(self, style=TE_READONLY) self.txt_html_report.Disable() sizer.Add(self.txt_html_report, pos=(row, col), span=(1, 3), flag=FLAG_ALL_AND_EXPAND) col += 3 self.btn_select_html = Button(self, label=u'Select HTML file') self.btn_select_html.Disable() self.btn_select_html.Bind(EVT_BUTTON, self.__on_select_file) sizer.Add(self.btn_select_html, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 self.cb_xml_output = CheckBox(self, label=u'Report in XML') self.cb_xml_output.Bind(EVT_CHECKBOX, self.__on_check) sizer.Add(self.cb_xml_output, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.txt_xml_report = TextCtrl(self, style=TE_READONLY) self.txt_xml_report.Disable() sizer.Add(self.txt_xml_report, pos=(row, col), span=(1, 3), flag=FLAG_ALL_AND_EXPAND) col += 3 self.btn_select_xml = Button(self, label=u'Select XML file') self.btn_select_xml.Disable() self.btn_select_xml.Bind(EVT_BUTTON, self.__on_select_file) sizer.Add(self.btn_select_xml, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 self.cb_options = CheckBox(self, label=u'Additional options') self.cb_options.Bind(EVT_CHECKBOX, self.__on_check) sizer.Add(self.cb_options, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.txt_options = TextCtrl(self) self.txt_options.Disable() sizer.Add(self.txt_options, pos=(row, col), span=(1, 3), flag=FLAG_ALL_AND_EXPAND) col += 3 self.btn_nose_help = Button(self, label=u'Show help') self.btn_nose_help.Bind(EVT_BUTTON, self.__on_show_help) sizer.Add(self.btn_nose_help, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 self.btn_load_tests_from_files = Button(self, label=u'Load tests from files') self.btn_load_tests_from_files.Bind(EVT_BUTTON, self.__load_tests_from_files) sizer.Add(self.btn_load_tests_from_files, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.btn_load_tests_from_dir = Button( self, label=u'Load tests from directory') self.btn_load_tests_from_dir.Bind(EVT_BUTTON, self.__load_tests_from_directory) sizer.Add(self.btn_load_tests_from_dir, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 dummy_label = StaticText(self) sizer.Add(dummy_label, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.cb_browser = Choice(self, choices=Browser.get_supported_browsers()) self.cb_browser.Select(0) sizer.Add(self.cb_browser, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.btn_run = Button(self, label=u'Run test cases') self.btn_run.Bind(EVT_BUTTON, self.__run_tests) sizer.Add(self.btn_run, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 window = SplitterWindow(self, style=SP_3D | SP_LIVE_UPDATE) self.tree_ctrl = CustomTreeCtrl( window, style=TR_SINGLE | TR_HAS_BUTTONS | TR_AUTO_CHECK_CHILD | TR_AUTO_CHECK_PARENT | TR_AUTO_TOGGLE_CHILD) self.tree_ctrl.SetBackgroundColour(self.GetBackgroundColour()) self.tree_ctrl.SetForegroundColour(self.GetForegroundColour()) self.tree_ctrl.Bind(EVT_TREE_ITEM_CHECKED, self.__on_tree_check) self.txt_ctrl = TextCtrl(window, style=TE_MULTILINE | TE_READONLY | HSCROLL | VSCROLL) font_size = self.txt_ctrl.GetFont().GetPointSize() self.txt_ctrl.SetFont( Font(font_size, FONTFAMILY_TELETYPE, NORMAL, NORMAL)) window.SplitVertically(self.tree_ctrl, self.txt_ctrl) sizer.Add(window, pos=(row, col), span=(1, 5), flag=FLAG_ALL_AND_EXPAND) sizer.AddGrowableCol(2, 1) sizer.AddGrowableRow(row, 1) self.SetSizerAndFit(sizer)
def __int__(self, parent): Panel.__init__(self, parent=parent) self.parent = parent
def __init__(self, parent): Panel.__init__(self, parent)
def __init__(self, *args, **kwargs): Panel.__init__(self, *args, **kwargs) sizer = GridBagSizer(5, 5) row = 0 col = 0 self.cb_html_output = CheckBox(self, label=u'Report in HTML') self.cb_html_output.Bind(EVT_CHECKBOX, self.__on_check) sizer.Add(self.cb_html_output, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.txt_html_report = TextCtrl(self, style=TE_READONLY) self.txt_html_report.Disable() sizer.Add(self.txt_html_report, pos=(row, col), span=(1, 3), flag=FLAG_ALL_AND_EXPAND) col += 3 self.btn_select_html = Button(self, label=u'Select HTML file') self.btn_select_html.Disable() self.btn_select_html.Bind(EVT_BUTTON, self.__on_select_file) sizer.Add(self.btn_select_html, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 self.cb_xml_output = CheckBox(self, label=u'Report in XML') self.cb_xml_output.Bind(EVT_CHECKBOX, self.__on_check) sizer.Add(self.cb_xml_output, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.txt_xml_report = TextCtrl(self, style=TE_READONLY) self.txt_xml_report.Disable() sizer.Add(self.txt_xml_report, pos=(row, col), span=(1, 3), flag=FLAG_ALL_AND_EXPAND) col += 3 self.btn_select_xml = Button(self, label=u'Select XML file') self.btn_select_xml.Disable() self.btn_select_xml.Bind(EVT_BUTTON, self.__on_select_file) sizer.Add(self.btn_select_xml, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 self.cb_options = CheckBox(self, label=u'Additional options') self.cb_options.Bind(EVT_CHECKBOX, self.__on_check) sizer.Add(self.cb_options, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.txt_options = TextCtrl(self) self.txt_options.Disable() sizer.Add(self.txt_options, pos=(row, col), span=(1, 3), flag=FLAG_ALL_AND_EXPAND) col += 3 self.btn_nose_help = Button(self, label=u'Show help') self.btn_nose_help.Bind(EVT_BUTTON, self.__on_show_help) sizer.Add(self.btn_nose_help, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 self.btn_load_tests_from_files = Button(self, label=u'Load tests from files') self.btn_load_tests_from_files.Bind(EVT_BUTTON, self.__load_tests_from_files) sizer.Add(self.btn_load_tests_from_files, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.btn_load_tests_from_dir = Button(self, label=u'Load tests from directory') self.btn_load_tests_from_dir.Bind(EVT_BUTTON, self.__load_tests_from_directory) sizer.Add(self.btn_load_tests_from_dir, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 dummy_label = StaticText(self) sizer.Add(dummy_label, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.cb_browser = Choice(self, choices=Browser.get_supported_browsers()) self.cb_browser.Select(0) sizer.Add(self.cb_browser, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) col += 1 self.btn_run = Button(self, label=u'Run test cases') self.btn_run.Bind(EVT_BUTTON, self.__run_tests) sizer.Add(self.btn_run, pos=(row, col), flag=FLAG_ALL_AND_EXPAND) row += 1 col = 0 window = SplitterWindow(self, style=SP_3D | SP_LIVE_UPDATE) self.tree_ctrl = CustomTreeCtrl(window, style=TR_SINGLE | TR_HAS_BUTTONS | TR_AUTO_CHECK_CHILD | TR_AUTO_CHECK_PARENT | TR_AUTO_TOGGLE_CHILD) self.tree_ctrl.SetBackgroundColour(self.GetBackgroundColour()) self.tree_ctrl.SetForegroundColour(self.GetForegroundColour()) self.tree_ctrl.Bind(EVT_TREE_ITEM_CHECKED, self.__on_tree_check) self.txt_ctrl = TextCtrl(window, style=TE_MULTILINE | TE_READONLY | HSCROLL | VSCROLL) font_size = self.txt_ctrl.GetFont().GetPointSize() self.txt_ctrl.SetFont(Font(font_size, FONTFAMILY_TELETYPE, NORMAL, NORMAL)) window.SplitVertically(self.tree_ctrl, self.txt_ctrl) sizer.Add(window, pos=(row, col), span=(1, 5), flag=FLAG_ALL_AND_EXPAND) sizer.AddGrowableCol(2, 1) sizer.AddGrowableRow(row, 1) self.SetSizerAndFit(sizer)
def __init__(self, parent): Panel.__init__(self, parent) self.grid = Grids.Main(self) self.BackgroundColour = RED
def __init__(self, parent): Panel.__init__(self, parent) t = StaticText(self, -1, "This is a PageTddhree object", (60, 200))
def __init__(self, parent): Panel.__init__(self, parent) grid = Grid(self) grid.CreateGrid(0, _TOTAL_COLS) grid.HideRowLabels() # Hide the index column grid.EnableGridLines(False) # Hide grid lines grid.DisableDragGridSize( ) # Disable resizing of rows/columns by dragging grid.DisableDragColMove() # Disable reordering of columns by dragging grid.SetCellHighlightPenWidth( 0) # Disable the highlight around the "current" cell grid.SetCellHighlightROPenWidth( 0) # Disable the highlight around the "current" read-only cell grid.SetSelectionMode(wx.grid.Grid.SelectRows) # Select the entire row grid.SetColLabelValue(_SHIP_COL, "Ship") grid.SetColLabelValue(_FIT_COL, "Fit") grid.SetColLabelValue(_POINTS_COL, "Points") grid.SetColLabelValue(_EHP_COL, "EHP") grid.SetColLabelValue(_DPS_COL, "DPS") grid.SetColLabelValue(_TANK_COL, "Tank") grid.SetColLabelValue(_ACTIVE_COL, "Active?") grid.SetColFormatBool(_ACTIVE_COL) grid.Bind(wx.grid.EVT_GRID_CELL_CHANGING, self._onCellChanging) grid.Bind(wx.grid.EVT_GRID_CELL_RIGHT_CLICK, self._showContextMenu) grid.Bind(wx.grid.EVT_GRID_CELL_LEFT_CLICK, self._onCellLeftClick) grid.Bind(wx.grid.EVT_GRID_CELL_LEFT_DCLICK, self._onCellDoubleLeftClick) gui.mainFrame.MainFrame.getInstance().Bind(GE.FIT_CHANGED, self._onFitChanged) shipCountLabel = wx.StaticText(self) pointCountLabel = wx.StaticText(self) dpsLabel = wx.StaticText(self) ehpLabel = wx.StaticText(self) infoPanelSizer = wx.FlexGridSizer(4, 0, 16) infoPanelSizer.Add(wx.StaticText(self, label="Ships"), flag=wx.ALIGN_CENTER) infoPanelSizer.Add(wx.StaticText(self, label="Points"), flag=wx.ALIGN_CENTER) infoPanelSizer.Add(wx.StaticText(self, label="Total DPS"), flag=wx.ALIGN_CENTER) infoPanelSizer.Add(wx.StaticText(self, label="Total EHP"), flag=wx.ALIGN_CENTER) infoPanelSizer.Add(shipCountLabel, flag=wx.ALIGN_CENTER) infoPanelSizer.Add(pointCountLabel, flag=wx.ALIGN_CENTER) infoPanelSizer.Add(dpsLabel, flag=wx.ALIGN_CENTER) infoPanelSizer.Add(ehpLabel, flag=wx.ALIGN_CENTER) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(grid, 1, wx.EXPAND) sizer.Add(infoPanelSizer, 0, wx.EXPAND | wx.ALL, border=8) self.SetSizer(sizer) self._grid = grid self.shipCountLabel = shipCountLabel self.pointCountLabel = pointCountLabel self.dpsLabel = dpsLabel self.ehpLabel = ehpLabel self._setup: Setup = None
def __init__(self, parent, config): Panel.__init__(self, parent=parent, id=ID_ANY) self.config = config self.header_font = Font(FontInfo(24).Bold()) self.construct_gui()