def createPortmidiPane(self, panel): portmidiPanel = wx.Panel(panel) portmidiPanel.SetBackgroundColour(BACKGROUND_COLOUR) gridSizer = wx.FlexGridSizer(5, 3, 5, 5) # Input textIn = wx.StaticText(portmidiPanel, 0, 'Input Device :') textIn.SetFont(self.font) availableMidiIns = [] for d in CeciliaLib.getAvailableMidiInputs(): availableMidiIns.append(CeciliaLib.ensureNFD(d)) if availableMidiIns != [] and 'All' not in availableMidiIns: availableMidiIns.append('All') if CeciliaLib.getMidiDeviceIn() != '': try: initInput = availableMidiIns[int(CeciliaLib.getMidiDeviceIn())] except: initInput = 'dump' else: initInput = 'dump' self.midiChoiceInput = CustomMenu(portmidiPanel, choice=availableMidiIns, init=initInput, size=(168,20), outFunction=self.changeMidiInput) gridSizer.AddMany([ (textIn, 0, wx.LEFT | wx.ALIGN_CENTER_VERTICAL, PADDING), (wx.StaticText(portmidiPanel, -1, '', size=(74,-1)), 1, wx.EXPAND), (self.midiChoiceInput, 0, wx.ALIGN_CENTER_VERTICAL), ]) gridSizer.AddGrowableCol(1, 1) portmidiPanel.SetSizerAndFit(gridSizer) return portmidiPanel
def updateMidiIn(self): CeciliaLib.queryAudioMidiDrivers() inputs = CeciliaLib.getAvailableMidiInputs() if inputs == []: self.midiChoiceInput.setChoice(['']) else: inputs.append('All') self.midiChoiceInput.setChoice(inputs) self.midiChoiceInput.setByIndex(int(CeciliaLib.getMidiDeviceIn()))
def createPortmidiPane(self, panel): portmidiPanel = wx.Panel(panel) portmidiPanel.SetBackgroundColour(BACKGROUND_COLOUR) gridSizer = wx.FlexGridSizer(5, 3, 5, 5) # Input textIn = wx.StaticText(portmidiPanel, 0, 'Input Device :') textIn.SetFont(self.font) availableMidiIns = [] for d in CeciliaLib.getAvailableMidiInputs(): availableMidiIns.append(CeciliaLib.ensureNFD(d)) if availableMidiIns != [] and 'All' not in availableMidiIns: availableMidiIns.append('All') if CeciliaLib.getMidiDeviceIn() != '': try: initInput = availableMidiIns[int(CeciliaLib.getMidiDeviceIn())] except: initInput = 'dump' else: initInput = 'dump' self.midiChoiceInput = CustomMenu(portmidiPanel, choice=availableMidiIns, init=initInput, size=(168, 20), outFunction=self.changeMidiInput) gridSizer.AddMany([ (textIn, 0, wx.LEFT | wx.ALIGN_CENTER_VERTICAL, PADDING), (wx.StaticText(portmidiPanel, -1, '', size=(74, -1)), 1, wx.EXPAND), (self.midiChoiceInput, 0, wx.ALIGN_CENTER_VERTICAL), ]) gridSizer.AddGrowableCol(1, 1) portmidiPanel.SetSizerAndFit(gridSizer) return portmidiPanel