def _app_destroy(): # Close threads and stop mlt consumers editorstate.player.shutdown( ) # has ticker thread and player threads running audiomonitoring.close() # Wait threads to stop while ((editorstate.player.ticker.exited == False) and (audiomonitoring._update_ticker.exited == False) and (audiowaveform.waveform_thread != None)): pass # Delete autosave file try: os.remove(userfolders.get_cache_dir() + get_instance_autosave_file()) except: print("Delete autosave file FAILED!") do_gtk_main_quit = jobs.handle_shutdown(get_instance_autosave_file()) # Exit gtk main loop if no jobs unfinished. if do_gtk_main_quit == True: Gtk.main_quit() else: # Jobs lauches its own top level window to show progress on unfinished jobs renders # and does Gtk.main_quit() later when done. pass
def _app_destroy(): # Close threads and stop mlt consumers editorstate.player.shutdown() # has ticker thread and player threads running audiomonitoring.close() # Wait threads to stop while((editorstate.player.ticker.exited == False) and (audiomonitoring._update_ticker.exited == False) and (audiowaveform.waveform_thread != None)): pass # Delete autosave file try: os.remove(utils.get_hidden_user_dir_path() + get_instance_autosave_file()) except: print "Delete autosave file FAILED" # Exit gtk main loop. Gtk.main_quit()