def generate(): dislbl.configure(text="Generating new song this may take a minute.") window.update() #predict melody MIDI = PredictMelody.Predict(model) #transpose melody desiredKey = getKey() TMIDI = Transpose.TransposeMelody(MIDI, desiredKey) #set melody tempo newTempo = int(tempocombo.get()) FMIDI = SetTempo.SetTempo(TMIDI, newTempo) #output mellody as midi file FMIDI.write('midi', fp='OUTPUT.mid') dislbl.configure( text="Generating complete hit play to listen or save to save midi file." ) window.update()
def PasteChords(self): src = get_text_from_clipboard() if src is None: return self.BeginUndoAction() start, end = self.GetSelection() if start == end: l = self.LineFromPosition(start) end = self.PositionFromLine(l + len(src.splitlines())) if end == -1: end = self.GetLength() else: end = self.PositionBefore(end) prev = self.PositionBefore(end) while end > start and self.GetCharAt(prev) in [10, 13]: end = prev prev = self.PositionBefore(end) self.SetSelection(start, end) self.ReplaceSelection(Transpose.pasteChords(src, self.GetSelectedText())) self.EndUndoAction()
def PasteChords(self): src = get_text_from_clipboard() if src is None: return self.BeginUndoAction() start, end = self.GetSelection() if start == end: l = self.LineFromPosition(start) end = self.PositionFromLine(l + len(src.splitlines())) if end == -1: end = self.GetLength() else: end = self.PositionBefore(end) prev = self.PositionBefore(end) while end > start and self.GetCharAt(prev) in [10, 13]: end = prev prev = self.PositionBefore(end) self.SetSelection(start, end) self.ReplaceSelection( Transpose.pasteChords(src, self.GetSelectedText())) self.EndUndoAction()
def CopyOnlyText(self): text = Transpose.removeChordPro(self.GetSelectedText()) c = wx.TheClipboard if c.Open(): c.SetData(wx.TextDataObject(text)) c.Close()
def RemoveChordsInSelection(self): self.ReplaceSelection(Transpose.removeChords(self.GetSelectedText()))