def run(self): if self.output != '' and self.output != None: self.interpreter.sendOutput( self.output ) if self.errMsg != '' and self.errMsg != None: self.interpreter.sendOutput( self.errMsg ) if self.errLine != None: self.interpreter.program.gui.editor.showErrorLine(self.errLine) self.interpreter.program.gui.commandWindow.restoreConsole(self.mode) self.interpreter.program.gui.setRunning( 0 ) self.interpreter.program.gui.stopWork() self.interpreter.program.gui.editor.document.removeLineHighlighting() self.interpreter.program.gui.editor.editable = 1 # needed for midi note playing import JavaMusic try: JavaMusic.cleanUp() except: menuBar = self.interpreter.program.gui.getJMenuBar() mediaMenu = menuBar.getMenu(menuBar.getMenuCount() - 2) if mediaMenu.getText() == 'MediaTools': # the above is merely for sanity checking... #if mediaMenu.getItem(0).isEnabled(): if self.interpreter.program.gui.soundErrorShown == 0: # we don't want to keep bombarding the user with messages! # mediaMenu.getItem(0).setEnabled(0) self.interpreter.program.gui.soundErrorShown = 1 msg = 'Sound card initialization failed!\n\n' msg += 'You will not be able to use this functionality during the\n' msg += 'current session of JES. Please make sure your sound card\n' msg += 'is not currently being used by another program and restart\n' msg += 'JES.' JOptionPane.showMessageDialog(self.interpreter.program.gui, msg, 'Sound Error', JOptionPane.ERROR_MESSAGE) if self.interpreter.debug_mode: self.interpreter.debugger.endExecution()