def __init__(self, parent): super(RoutinePanel, self).__init__(parent, wx.ID_ANY) self.active_routine = self.GetParent().GetParent().active_routine if self.active_routine is not None: self.sessions = self.active_routine["sessions"] else: self.sessions = [] self.routineView = GroupListView(self, wx.ID_ANY, style=wx.LC_REPORT | wx.SUNKEN_BORDER) self.routineView.SetColumns([ ColumnDefn("Date", "left", 200, "date"), ColumnDefn("Workout Name", "left", 280, "workoutName"), ColumnDefn("Target", "left", 200, "muscleGroup"), ColumnDefn("Weight", "left", 150, "weight"), ColumnDefn("Sets", "right", 50, "sets"), ColumnDefn("Reps", "left", 50, "reps") ]) self.routineView.cellEditMode = ObjectListView.CELLEDIT_DOUBLECLICK self.routineViewSizer = wx.BoxSizer(wx.VERTICAL) self.routineViewSizer.Add(self.routineView, 1, wx.ALL | wx.EXPAND, 5) self.SetSizer(self.routineViewSizer)
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.myOlv = GroupListView(panel, -1, style=wx.LC_REPORT | wx.SUNKEN_BORDER) sizer_2 = wx.BoxSizer(wx.VERTICAL) sizer_2.Add(self.myOlv, 1, wx.ALL | wx.EXPAND, 4) panel.SetSizer(sizer_2) self.Layout()
def setUp(self): super(TestGroupObjectListView, self).setUp() panel = wx.Panel(self.frame, -1) self.objectListView = GroupListView(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 _makeListView (self, parent): if self.config.groupByGenre: listView = GroupListView (parent, wx.ID_ANY, style = wx.LC_REPORT | wx.SUNKEN_BORDER, useAlternateBackColors = False) else: listView = ObjectListView (parent, wx.ID_ANY, style = wx.LC_REPORT | wx.SUNKEN_BORDER, useAlternateBackColors = False) listView.rowFormatter = self.rowFormatter listView.SetEmptyListMsg ("No transducers found") # COLUMNS: # Normal: DR # Grp: D(G)R # Det: DNGSR # Det+Grp: DN(G)SR cols = ([ ColumnDefn ("Description", "left", 220, "smartName"), ColumnDefn ("Reading", "right", 100, "lastRead", isSpaceFilling = True), ]) if self.config.viewDetails: cols.insert (1, ColumnDefn ("Name", "center", 50, "name")) if self.config.groupByGenre: # This col is only used for grouping, use 0 width and make entries empty to hide it cols.insert (2, ColumnDefn ("Genre", "center", 0, "genre", maximumWidth = 0, stringConverter = lambda g: "", groupKeyConverter = lambda g: "Sensors" if g == Sensoria.SENSOR else "Actuators")) else: cols.insert (2, ColumnDefn ("Genre", "center", 100, "genre", stringConverter = lambda g: "Sensor" if g == Sensoria.SENSOR else "Actuator")) cols.insert (3, ColumnDefn ("Stereo", "center", 50, "stereotype")) elif self.config.groupByGenre: # This col is only used for grouping, use 0 width and make entries empty to hide it cols.insert (2, ColumnDefn ("Genre", "center", 50, "genre", maximumWidth = 0, stringConverter = lambda g: "", groupKeyConverter = lambda g: "Sensors" if g == Sensoria.SENSOR else "Actuators")) listView.SetColumns (cols) if self.config.groupByGenre: listView.showItemCounts = False listView.SetShowGroups = True listView.alwaysGroupByColumnIndex = 3 # col 0 is expansion icon listView.SetSortColumn (listView.columns[1]) else: listView.SetSortColumn (listView.columns[0]) listView.Bind (wx.EVT_LIST_ITEM_ACTIVATED, self.onItemDoubleClicked) listView.Bind (wx.EVT_LIST_ITEM_RIGHT_CLICK, self.onItemRightClicked) return listView
def __init__(self, *args, **kwds): kwds["style"] = wx.DEFAULT_FRAME_STYLE wx.Frame.__init__(self, *args, **kwds) font = wx.Font(9, wx.FONTFAMILY_DEFAULT, style=wx.FONTSTYLE_NORMAL, weight=wx.FONTWEIGHT_NORMAL) self.lbl_query = wx.StaticText(self, -1, " Song: ", style=wx.ALIGN_CENTRE) self.lbl_query.SetFont(font) self.txt_query = wx.TextCtrl(self, 1, "", style=wx.TE_PROCESS_ENTER) self.fb = wx.StaticBitmap(self, bitmap=wx.BitmapFromImage(wx.ImageFromStream(fbicon, wx.BITMAP_TYPE_PNG)), size=(22,22)) self.folder_chooser = wx.Button(self, -1, "Choose Destination", size=[-1, self.txt_query.GetSize().GetHeight()]) self.lst_results = ObjectListView(self, -1, style=wx.LC_REPORT) self.lst_downloads = GroupListView(self, -1, style=wx.LC_REPORT) self.lst_artists = ObjectListView(self, -1, style=wx.LC_REPORT) self.lst_albums = ObjectListView(self, -1, style=wx.LC_REPORT) self.lst_songs = ObjectListView(self, -1, style=wx.LC_REPORT) self.lst_songs.ToggleWindowStyle(wx.HSCROLL) self.frame_statusbar = self.CreateStatusBar(1, wx.SB_RAISED) self.__set_properties() self.__do_layout() self.Bind(EVT_EXEC_FUNC, self._ExecFunc) self.Bind(wx.EVT_TEXT_ENTER, self._TextEnter, self.txt_query) self.Bind(wx.EVT_LIST_ITEM_RIGHT_CLICK, self._ResultsContext, self.lst_results) self.Bind(wx.EVT_LIST_ITEM_RIGHT_CLICK, self._ResultsContext, self.lst_songs) self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self._DoubleClick, self.lst_results) self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self._DoubleClick, self.lst_songs) self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self._DoubleClick, self.lst_downloads) self.Bind(wx.EVT_LIST_ITEM_RIGHT_CLICK, self._DownloadsContext, self.lst_downloads) self.Bind(wx.EVT_BUTTON, self._ChooseFolder, self.folder_chooser) self.Bind(wx.EVT_LIST_ITEM_SELECTED, self._ObjectSelected, self.lst_artists) self.Bind(wx.EVT_LIST_ITEM_SELECTED, self._ObjectSelected, self.lst_albums) self.fb.Bind(wx.EVT_LEFT_DOWN, self._FBClick) self.txt_query.Bind(wx.EVT_KEY_DOWN, self._Tab) self.Bind(wx.EVT_CLOSE, self._Close) self.menu_results = {} self.menu_downloads = {} self.menu_results[ID_DOWNLOAD] = "Download" self.menu_downloads[ID_REMOVE] = "Remove" self.artists = [] if sys.platform == 'win32': self.SetIcon(wx.Icon(sys.executable, wx.BITMAP_TYPE_ICO)) else: if os.path.exists("groove.ico"): self.SetIcon(wx.Icon("groove.ico", wx.BITMAP_TYPE_ICO))
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)