def dark_row_formatter(listctrl: wx.ListCtrl, dark: bool = False) -> None: """Toggles the row in a ListCtrl""" items = [listctrl.GetItem(i) for i in range(listctrl.GetItemCount())] for index, item in enumerate(items): if dark: if index % 2: item.SetBackgroundColor(DARK_BACKGROUND_COLOUR) else: item.SetBackgroundColor(DARK_LIGHTGREY_COLOUR) listctrl.SetItem(item)
def _set_data_view_with_df(grid: wx.ListCtrl, df: Optional[pd.DataFrame]): """Set data view with data frame.""" grid.ClearAll() if df is None: return cols = df.columns.tolist() n_col = len(cols) for i, col in enumerate(cols): grid.InsertColumn(i, col) for i, row in df.iterrows(): grid.InsertItem(i, row[cols[0]]) for n in range(1, n_col): grid.SetItem(i, n, row[cols[n]])
def listctrl(element, instance: wx.ListCtrl): props = {**element['props']} if 'style' in props: del props['style'] set_basic_props(instance, props) # TODO: what events...? instance.DeleteAllColumns() instance.DeleteAllItems() for e, col in enumerate(props.get('column_defs', [])): instance.InsertColumn(e, col['title']) for row_idx, item in enumerate(props.get('data', [])): instance.InsertItem(row_idx, '') for col_idx, coldef in enumerate(props.get('column_defs', [])): instance.SetItem(row_idx, col_idx, coldef['column'](item)) return instance
def dark_row_formatter(listctrl: wx.ListCtrl, dark: bool = False) -> None: """Toggles the row in a ListCtrl""" items = [listctrl.GetItem(i) for i in range(listctrl.GetItemCount())] for index, item in enumerate(items): if dark: if index % 2: item.SetBackgroundColor("Dark Grey") else: item.SetBackgroundColor("Light Grey") else: if index % 2: item.SetBackgroundColor("Light Blue") else: item.SetBackgroundColor("Yellow") listctrl.SetItem(item)