def __init__(self, parent, statusbar): scrolled.ScrolledPanel.__init__(self, parent) self.statusbar = statusbar self.parent = parent self.list = FastObjectListView(self, sortable=True, style=wx.LC_REPORT | wx.SUNKEN_BORDER, size=(950, 350)) self.list.handleStandardKeys = False self.list.SetEmptyListMsg("This database has no rows") self.list.SetEmptyListMsgFont( wx.FFont(24, wx.DEFAULT, faceName="Tekton")) self.width_date = 170 self.width = 100 self.width_model = 130 self.check_date = 0 self.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected, self.list) self.Bind(wx.EVT_LIST_COL_CLICK, self.OnItemSelected, self.list) mastersizer = wx.BoxSizer(wx.HORIZONTAL) mastersizer.Add(self.list, 0, wx.ALL, 5) pub.subscribe(self.fill_list, pubsub_fill_list_DB) pub.subscribe(self.re_fill_list, pubsub_update_db_nb_line) self.SetSizer(mastersizer) self.Layout() self.SetAutoLayout(1) self.SetupScrolling() self.initialize_list() c = DataBaseUse() c.initialize_database()
def __init__(self): wx.Frame.__init__(self, None, id=wx.ID_ANY, title='', size=(600, 400)) self.__init_menu_bar() self.panel = wx.Panel(self) main_sizer = wx.BoxSizer(wx.VERTICAL) self.__filters = [ String.LEVEL_INFO, String.LEVEL_WARM, String.LEVEL_ERROR, String.LEVEL_RESULT ] filter_sizer = self.__init_filter_sizer() self.list_view = FastObjectListView(self.panel, wx.ID_ANY, style=wx.LC_REPORT | wx.LC_HRULES | wx.LC_VRULES | wx.SUNKEN_BORDER | wx.LC_NO_SORT_HEADER) main_sizer.Add(filter_sizer, 0, wx.EXPAND | wx.ALL, 1) main_sizer.Add(self.list_view, 1, wx.EXPAND | wx.ALL, 1) self.panel.SetSizer(main_sizer) self.Layout() self.__set_columns() self.__set_row_formatter() self.__set_filter() self.__log_file = None self.__logs = list() self.__tmp_logs = list() self.__timer = wx.Timer(self) self.Bind(wx.EVT_TIMER, self.AppendLogs, self.__timer) self.__timer.Start(500) self.Bind(wx.EVT_CLOSE, self.on_close)
def _init_ctrls(self, prnt): # generated method, don't edit wx.Panel.__init__(self, id=wxID_PNLDATATABLE, name=u'pnlDataTable', parent=prnt, size=wx.Size(677, 449), style=wx.TAB_TRAVERSAL) self.myOlv = FastObjectListView(self, -1, style=wx.LC_REPORT) #Virtual # self.myOlv.SetObjectGetter(self.fetchFromDatabase) self.myOlv.SetEmptyListMsg("") sizer_2 = wx.BoxSizer(wx.VERTICAL) sizer_2.Add(self.myOlv, 1, wx.ALL | wx.EXPAND, 4) self.SetSizer(sizer_2) self.doneselecting = True self.myOlv._highlightBrush = wx.Brush("red") self.myOlv.Bind(wx.EVT_LIST_ITEM_SELECTED, self.OnItemSelected) ## self.myOlv.Bind(wx.EVT_LIST_COL_END_DRAG , self.OnLUp,id=wxID_PNLDATATABLE ) ## self.myOlv.Bind(wx.EVT_LIST_ITEM_DESELECTED, self.OnItemDeSelected ) ## self.myOlv.Bind(wx.EVT_LEFT_UP, self.OnLUp, id=wxID_PNLDATATABLE ) ## self.myOlv.Bind(wx.EVT_LEFT_DOWN, self.OnLDown, id=wxID_PNLDATATABLE) Publisher.subscribe(self.OnChangeSelection, ("changeTableSelection")) Publisher.subscribe(self.OnRefresh, ("refreshTable")) self.Layout()
def InitWidgets(self): panel = wx.Panel(self, -1) sizer_1 = wx.BoxSizer(wx.VERTICAL) sizer_1.Add(panel, 1, wx.ALL | wx.EXPAND) self.SetSizer(sizer_1) self.tcSql = wx.TextCtrl( panel, -1, "select trackId, title, artist, album, sizeInBytes, rating from tracks;", style=wx.TE_MULTILINE | wx.TE_PROCESS_ENTER) self.myOlv = FastObjectListView(panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) self.stMsg = wx.StaticText(panel, -1, "Default value") sizer_2 = wx.FlexGridSizer(3, 1, 0, 0) sizer_2.Add(self.tcSql, 1, wx.ALL | wx.EXPAND, 4) sizer_2.Add(self.myOlv, 1, wx.ALL | wx.EXPAND, 4) sizer_2.Add(self.stMsg, 1, wx.ALL | wx.EXPAND, 4) sizer_2.AddGrowableCol(0) sizer_2.AddGrowableRow(1) panel.SetSizer(sizer_2) self.Bind(wx.EVT_TEXT_ENTER, self.HandleTextEnter, self.tcSql) self.myOlv.Bind(EVT_CELL_EDIT_STARTING, self.HandleCellEditStarting) self.myOlv.Bind(EVT_CELL_EDIT_FINISHED, self.HandleCellEditFinished) self.Layout()
def InitWidgets(self): # Widget creations self.statusbar = self.CreateStatusBar(1, 0) panel1 = wx.Panel(self, -1) panel12 = wx.Panel(panel1, -1) self.olv = FastObjectListView(panel1, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) rootText = wx.StaticText(panel12, -1, "&Tree walk from:") self.tcRoot = wx.DirPickerCtrl(panel12, style=wx.DIRP_USE_TEXTCTRL) self.btnStart = wx.Button(panel12, -1, "&Start") secondsText = wx.StaticText(panel12, -1, "Seconds &between updates:") self.scSeconds = wx.SpinCtrl(panel12, -1, "") # Layout sizer_3 = wx.FlexGridSizer(2, 3, 4, 4) sizer_3.AddGrowableCol(1) sizer_3.Add(rootText, 1, wx.ALIGN_CENTER_VERTICAL, 0) sizer_3.Add(self.tcRoot, 1, wx.ALL | wx.EXPAND, 0) sizer_3.Add(self.btnStart, 1, wx.ALL | wx.EXPAND, 0) sizer_3.Add(secondsText, 1, wx.ALIGN_CENTER_VERTICAL, 0) sizer_3.Add(self.scSeconds, 1) panel12.SetSizer(sizer_3) panel12.Layout() sizer_2 = wx.FlexGridSizer(3, 1, 4, 4) sizer_2.Add(panel12, 1, wx.ALL | wx.EXPAND, 4) sizer_2.Add(self.olv, 1, wx.ALL | wx.EXPAND, 4) sizer_2.AddGrowableCol(0) sizer_2.AddGrowableRow(1) panel1.SetSizer(sizer_2) panel1.Layout() sizer_1 = wx.BoxSizer(wx.VERTICAL) sizer_1.Add(panel1, 1, wx.EXPAND) self.SetSizer(sizer_1) self.Layout() # Event handling self.Bind(wx.EVT_CLOSE, self.HandleClose) self.btnStart.Bind(wx.EVT_BUTTON, self.HandleStart) self.tcRoot.Bind(wx.EVT_DIRPICKER_CHANGED, self.HandleRootText) # Widget initialization self.btnStart.SetDefault() self.scSeconds.SetRange(0, 15) self.scSeconds.SetValue(2) self.tcRoot.SetPath(wx.StandardPaths.Get().GetDocumentsDir()) # OK, This is the whole point of the example. Wrap the ObjectListView in a batch updater self.olv = BatchedUpdate(self.olv, 2)
def setUp(self): super(TestFastObjectListView, self).setUp() panel = wx.Panel(self.frame, -1) self.objectListView = FastObjectListView(panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) sizerPanel = wx.BoxSizer(wx.VERTICAL) sizerPanel.Add(self.objectListView, 1, wx.ALL | wx.EXPAND, 4) panel.SetSizer(sizerPanel) sizerFrame = wx.BoxSizer(wx.VERTICAL) sizerFrame.Add(panel, 1, wx.ALL | wx.EXPAND, 4) self.frame.SetSizer(sizerFrame) loadOLV(self.objectListView)
def __init__(self, *args, **kwds): kwds["style"] = wx.DEFAULT_FRAME_STYLE wx.Frame.__init__(self, *args, **kwds) global theObjectListView, theFastObjectListView, theVirtualObjectListView, theGroupObjectListView, theFrame theFrame = self self.panel = wx.Panel(self, -1) theObjectListView = ObjectListView(self.panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) theFastObjectListView = FastObjectListView(self.panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) theVirtualObjectListView = VirtualObjectListView( self.panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) theGroupObjectListView = GroupListView(self.panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) sizer_2 = wx.BoxSizer(wx.VERTICAL) sizer_2.Add(theObjectListView, 1, wx.ALL | wx.EXPAND, 4) sizer_2.Add(theFastObjectListView, 1, wx.ALL | wx.EXPAND, 4) sizer_2.Add(theVirtualObjectListView, 1, wx.ALL | wx.EXPAND, 4) sizer_2.Add(theGroupObjectListView, 1, wx.ALL | wx.EXPAND, 4) self.panel.SetSizer(sizer_2) self.panel.Layout() sizer_1 = wx.BoxSizer(wx.VERTICAL) sizer_1.Add(self.panel, 1, wx.EXPAND) self.SetSizer(sizer_1) self.Layout() wx.CallAfter(self.runTests)
def __init__(self, *args, **kwds): # begin wxGlade: AIGOnotebook.__init__ kwds["style"] = 0 wx.Notebook.__init__(self, *args, **kwds) self.notebook_Plot = wx.Panel(self, -1) self.notebook_Compare = wx.Panel(self, -1) self.notebook_Compare_Aspect = wx.Notebook(self.notebook_Compare, -1, style=0) self.notebook_Compare_Aspect_pane_4 = wx.Panel(self.notebook_Compare_Aspect, -1) self.notebook_Compare_Aspect_pane_3 = wx.Panel(self.notebook_Compare_Aspect, -1) self.notebook_Compare_Aspect_pane_2 = wx.Panel(self.notebook_Compare_Aspect, -1) self.notebook_1_pane_1 = wx.Panel(self.notebook_Compare_Aspect, -1) self.notebook_Analysis = wx.Panel(self, -1) self.notebook_Statistics = wx.Notebook(self.notebook_Analysis, -1, style=wx.NB_LEFT) self.notebook_cellular_component = wx.Panel(self.notebook_Statistics, -1) self.notebook_molecular_function = wx.Panel(self.notebook_Statistics, -1) self.notebook_biological_process = wx.Panel(self.notebook_Statistics, -1) self.notebook_All_aspects_of_GO = wx.Panel(self.notebook_Statistics, -1) self.notebook_Data = wx.Panel(self, -1) self.sizer_GP_staticbox = wx.StaticBox(self.notebook_Data, -1, "Gene Products") self.sizer_FA_staticbox = wx.StaticBox(self.notebook_Data, -1, "Functional Annotations") self.sizer_16_staticbox = wx.StaticBox(self.notebook_Analysis, -1, "Statistics") self.sizer_27_copy_1_staticbox = wx.StaticBox(self.notebook_Compare, -1, "Select one or two Functional Annotations") self.sizer_31_staticbox = wx.StaticBox(self.notebook_Compare, -1, "Update information") self.sizer_27_copy_staticbox = wx.StaticBox(self.notebook_1_pane_1, -1, "") self.sizer_27_copy_copy_staticbox = wx.StaticBox(self.notebook_Compare_Aspect_pane_2, -1, "") self.sizer_27_copy_copy_1_staticbox = wx.StaticBox(self.notebook_Compare_Aspect_pane_3, -1, "") self.sizer_27_copy_copy_2_staticbox = wx.StaticBox(self.notebook_Compare_Aspect_pane_4, -1, "") self.sizer_23_staticbox = wx.StaticBox(self.notebook_Plot, -1, "") self.sizer_GO_staticbox = wx.StaticBox(self.notebook_Data, -1, "Gene Ontology") self.label_GO = wx.TextCtrl(self.notebook_Data, -1, "Choose the Gene Ontology", style=wx.TE_READONLY|wx.NO_BORDER) self.box_GO = wx.TextCtrl(self.notebook_Data, -1, "", style=wx.HSCROLL) self.button_GOChoose = wx.Button(self.notebook_Data, -1, "&Browse", style=wx.BU_EXACTFIT) self.button_GOLoad = wx.Button(self.notebook_Data, wx.ID_OPEN, "", style=wx.BU_EXACTFIT) self.radio_btn_GO = wx.RadioBox(self.notebook_Data, -1, "OBO format", choices=["XML", "Text"], majorDimension=1, style=wx.RA_SPECIFY_ROWS) self.checkbox_GO = wx.CheckBox(self.notebook_Data, -1, "Read previously serialised version") self.label_RefSet = wx.TextCtrl(self.notebook_Data, -1, "Choose the set of gene products", style=wx.TE_READONLY|wx.NO_BORDER) self.box_RefSet = wx.TextCtrl(self.notebook_Data, -1, "", style=wx.HSCROLL) self.button_RefSetChoose = wx.Button(self.notebook_Data, -1, "B&rowse", style=wx.BU_EXACTFIT) self.button_RefSetLoad = wx.Button(self.notebook_Data, wx.ID_OPEN, "", style=wx.BU_EXACTFIT) self.radio_btn_RefSet = wx.RadioBox(self.notebook_Data, -1, "File format", choices=["Fasta", "Text"], majorDimension=1, style=wx.RA_SPECIFY_ROWS) self.button_AddFA = wx.Button(self.notebook_Data, wx.ID_ADD, "") self.button_RemoveFA = wx.Button(self.notebook_Data, wx.ID_REMOVE, "") self.list_FA = wx.ListCtrl(self.notebook_Data, -1, style=wx.LC_REPORT|wx.SUNKEN_BORDER) self.button_LoadFA = wx.Button(self.notebook_Data, -1, "&Load") self.checkbox_unconnected = wx.CheckBox(self.notebook_Analysis, -1, "Obsolescence") self.label_unconnected = wx.StaticText(self.notebook_Analysis, -1, "Proportion of obsoletete annotations in annotation sets for which not alternative have been provided", style=wx.ALIGN_RIGHT) self.bitmap_unconnected = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_removeUnconnected = wx.CheckBox(self.notebook_Analysis, -1, "Remove Obsolete") self.label_removeUnconnected = wx.StaticText(self.notebook_Analysis, -1, "Remove obsolete annotations in all annotations sets", style=wx.ALIGN_RIGHT) self.bitmap_removeUnconnected = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_coverage = wx.CheckBox(self.notebook_Analysis, -1, "Coverage") self.label_coverage = wx.StaticText(self.notebook_Analysis, -1, "Proportion of gene products being annotated to at least on term", style=wx.ALIGN_RIGHT) self.bitmap_coverage = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_richness = wx.CheckBox(self.notebook_Analysis, -1, "Richness") self.label_richness = wx.StaticText(self.notebook_Analysis, -1, "Proportion of the terms in GO being assigned to at least one term", style=wx.ALIGN_RIGHT) self.bitmap_richness = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_numberAnnot = wx.CheckBox(self.notebook_Analysis, -1, "Number of Annotations") self.label_numberAnnot = wx.StaticText(self.notebook_Analysis, -1, "Number of annotation of an annotated gene product", style=wx.ALIGN_RIGHT) self.bitmap_numberAnnot = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_coherence = wx.CheckBox(self.notebook_Analysis, -1, "Coherence") self.label_coherence = wx.StaticText(self.notebook_Analysis, -1, "Semantic Distance of an annotation set", style=wx.ALIGN_RIGHT) self.bitmap_coherence = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_compactness = wx.CheckBox(self.notebook_Analysis, -1, "Compactness") self.label_compactness = wx.StaticText(self.notebook_Analysis, -1, "Semantic Distance between all annotation sets", style=wx.ALIGN_RIGHT) self.bitmap_compactness = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_specificity = wx.CheckBox(self.notebook_Analysis, -1, "Specificity") self.label_specificity = wx.StaticText(self.notebook_Analysis, -1, "Average number of ancestors over all the terms of an annotation set", style=wx.ALIGN_RIGHT) self.bitmap_specificity = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_informationContent = wx.CheckBox(self.notebook_Analysis, -1, "Information Content") self.label_informationContent = wx.StaticText(self.notebook_Analysis, -1, "Average Information Content over all the terms of an annotation set", style=wx.ALIGN_RIGHT) self.bitmap_informationContent = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.checkbox_redundancy = wx.CheckBox(self.notebook_Analysis, -1, "Redundancy") self.label_redundancy = wx.StaticText(self.notebook_Analysis, -1, "Proportion of terms being ancestor one other term in an annotation set", style=wx.ALIGN_RIGHT) self.bitmap_redundancy = wx.StaticBitmap(self.notebook_Analysis, -1, wx.NullBitmap) self.button_Apply = wx.Button(self.notebook_Analysis, wx.ID_APPLY, "") self.grid_All_aspects_of_GO = StatisticsGrid(self.notebook_All_aspects_of_GO, -1, size=(1, 1)) self.grid_biological_process = StatisticsGrid(self.notebook_biological_process, -1, size=(1, 1)) self.grid_molecular_function = StatisticsGrid(self.notebook_molecular_function, -1, size=(1, 1)) self.grid_cellular_component = StatisticsGrid(self.notebook_cellular_component, -1, size=(1, 1)) self.button_Export = wx.Button(self.notebook_Analysis, wx.ID_FORWARD, "") self.combo_box_Compare_FA1 = wx.ComboBox(self.notebook_Compare, -1, choices=[], style=wx.CB_DROPDOWN|wx.CB_READONLY) self.combo_box_Compare_FA2 = wx.ComboBox(self.notebook_Compare, -1, choices=[], style=wx.CB_DROPDOWN|wx.CB_READONLY) self.button_Update_Venn = wx.Button(self.notebook_Compare, wx.ID_REFRESH, "") self.button_Update_FuncSim = wx.Button(self.notebook_Compare, wx.ID_REFRESH, "") self.bitmap_Venn_All_aspects_of_GO = wx.StaticBitmap(self.notebook_1_pane_1, -1, wx.NullBitmap) self.bitmap_All_aspects_of_GO = wx.StaticBitmap(self.notebook_1_pane_1, -1, wx.NullBitmap) self.bitmap_FuncSim_All_aspects_of_GO = wx.StaticBitmap(self.notebook_1_pane_1, -1, wx.NullBitmap) self.list_ctrl_Compare_All_aspects_of_GO = FastObjectListView(self.notebook_1_pane_1, -1, style=wx.LC_REPORT|wx.LC_SINGLE_SEL|wx.LC_SORT_ASCENDING|wx.LC_HRULES|wx.SUNKEN_BORDER) self.button_Compare_All_aspects_of_GO = wx.Button(self.notebook_1_pane_1, wx.ID_ZOOM_IN, "") self.bitmap_Venn_biological_process = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_2, -1, wx.NullBitmap) self.bitmap_biological_process = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_2, -1, wx.NullBitmap) self.bitmap_FuncSim_biological_process = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_2, -1, wx.NullBitmap) self.list_ctrl_Compare_biological_process = FastObjectListView(self.notebook_Compare_Aspect_pane_2, -1, style=wx.LC_REPORT|wx.LC_SINGLE_SEL|wx.LC_SORT_ASCENDING|wx.LC_HRULES|wx.SUNKEN_BORDER) self.button_Compare_biological_process = wx.Button(self.notebook_Compare_Aspect_pane_2, wx.ID_ZOOM_IN, "") self.bitmap_Venn_molecular_function = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_3, -1, wx.NullBitmap) self.bitmap_molecular_function = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_3, -1, wx.NullBitmap) self.bitmap_FuncSim_molecular_function = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_3, -1, wx.NullBitmap) self.list_ctrl_Compare_molecular_function = FastObjectListView(self.notebook_Compare_Aspect_pane_3, -1, style=wx.LC_REPORT|wx.LC_SINGLE_SEL|wx.LC_SORT_ASCENDING|wx.LC_HRULES|wx.SUNKEN_BORDER) self.button_Compare_molecular_function = wx.Button(self.notebook_Compare_Aspect_pane_3, wx.ID_ZOOM_IN, "") self.bitmap_Venn_cellular_component = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_4, -1, wx.NullBitmap) self.bitmap_cellular_component = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_4, -1, wx.NullBitmap) self.bitmap_FuncSim_cellular_component = wx.StaticBitmap(self.notebook_Compare_Aspect_pane_4, -1, wx.NullBitmap) self.list_ctrl_Compare_cellular_component = FastObjectListView(self.notebook_Compare_Aspect_pane_4, -1, style=wx.LC_REPORT|wx.LC_SINGLE_SEL|wx.LC_SORT_ASCENDING|wx.LC_HRULES|wx.SUNKEN_BORDER) self.button_Compare_cellular_component = wx.Button(self.notebook_Compare_Aspect_pane_4, wx.ID_ZOOM_IN, "") self.label_PlotStatistics = wx.StaticText(self.notebook_Plot, -1, "Select a statistics") self.combo_PlotStat = wx.ComboBox(self.notebook_Plot, -1, choices=[], style=wx.CB_DROPDOWN) self.label_2 = wx.StaticText(self.notebook_Plot, -1, "Plot type") self.combo_PlotType = wx.ComboBox(self.notebook_Plot, -1, choices=[], style=wx.CB_DROPDOWN) self.label_PlotStatistics_copy = wx.StaticText(self.notebook_Plot, -1, "Select Functional Annotations") self.list_PlotFA = wx.ListBox(self.notebook_Plot, -1, choices=[], style=wx.LB_MULTIPLE|wx.LB_HSCROLL|wx.LB_NEEDED_SB) self.bitmap_Plot = wx.StaticBitmap(self.notebook_Plot, -1, wx.NullBitmap, style=wx.RAISED_BORDER) self.__set_properties() self.__do_layout()
def __init__(self, parent, theme): """ Constructor Defines the ObjectListView for dropped items and the layout for its components """ wx.Panel.__init__(self, parent=parent) self.videos_list = [] self.primary_background_color = theme.get("primaryBackgroundColor") self.secondary_background_color = theme.get("secondaryBackgroundColor") self.foreground_color = theme.get("foregroundColor") self.list_font = wx.Font(pointSize=11, family=wx.FONTFAMILY_SWISS, style=wx.FONTSTYLE_NORMAL, weight=wx.FONTWEIGHT_LIGHT, underline=False, faceName='Roboto') self.regular_font = wx.Font(pointSize=12, family=wx.FONTFAMILY_SWISS, style=wx.FONTSTYLE_NORMAL, weight=wx.FONTWEIGHT_NORMAL, underline=False, faceName='Roboto') self.big_font = wx.Font(pointSize=32, family=wx.FONTFAMILY_SWISS, style=wx.FONTSTYLE_NORMAL, weight=wx.FONTWEIGHT_BOLD, underline=False, faceName='Roboto') self.SetBackgroundColour(self.primary_background_color) self.SetForegroundColour(self.foreground_color) video_drop_target = VideoDropTarget(self) self.olv = FastObjectListView(self, style=wx.LC_REPORT | wx.BORDER_NONE) self.olv.SetEmptyListMsg(i18n.t('i18n.emptyList')) self.olv.SetDropTarget(video_drop_target) self.olv.cellEditMode = FastObjectListView.CELLEDIT_NONE self.olv.SetEmptyListMsgFont(self.big_font) self.olv.SetFont(self.list_font) self.set_files() self.sizer = wx.BoxSizer(wx.VERTICAL) self.olv.Bind(wx.EVT_KEY_UP, self.on_delete) self.sizer.Add(self.olv, 1, wx.EXPAND) grid1 = wx.GridSizer(1, 3, 1, 10) grid2 = wx.GridSizer(1, 3, 1, 10) self.lbl_cut_init = wx.StaticText(self, -1, i18n.t('i18n.lblCutInitSec')) self.lbl_cut_init.SetFont(self.regular_font) self.txt_cut_init = wx.TextCtrl(self, -1, "0", size=(175, -1), style=wx.BORDER_STATIC) self.txt_cut_init.SetBackgroundColour(self.secondary_background_color) self.txt_cut_init.SetForegroundColour(self.foreground_color) self.txt_cut_init.SetFont(self.regular_font) self.lbl_cut_end = wx.StaticText(self, -1, i18n.t('i18n.lblCutEndSec')) self.lbl_cut_end.SetFont(self.regular_font) self.txt_cut_end = wx.TextCtrl(self, -1, "0", size=(175, -1), style=wx.BORDER_STATIC) self.txt_cut_end.SetBackgroundColour(self.secondary_background_color) self.txt_cut_end.SetForegroundColour(self.foreground_color) self.txt_cut_end.SetFont(self.regular_font) self.chk_delete = wx.CheckBox(self, -1, i18n.t('i18n.chkDelete')) self.chk_delete.SetFont(self.regular_font) grid1.AddMany([self.lbl_cut_init, self.lbl_cut_end]) grid1.AddSpacer(0) grid2.AddMany([self.txt_cut_init, self.txt_cut_end, self.chk_delete]) self.btn_cut = wx.Button(self, -1, i18n.t('i18n.btnCut'), size=(100, 50), style=wx.BORDER_NONE) self.btn_cut.Bind(wx.EVT_BUTTON, self.on_cut) self.btn_cut.SetBackgroundColour(self.secondary_background_color) self.btn_cut.SetForegroundColour(self.foreground_color) self.btn_cut.SetFont(self.big_font) self.sizer.AddSpacer(20) self.sizer.Add(grid1, 0, wx.EXPAND | wx.LEFT | wx.BOTTOM, 10) self.sizer.Add(grid2, 0, wx.EXPAND | wx.LEFT, 10) self.sizer.AddSpacer(20) self.sizer.Add(self.btn_cut, 0, wx.EXPAND) self.SetSizer(self.sizer)