def lash_check_events(lash_client): event = lash.lash_get_event(lash_client) while event: print repr(event) event_type = lash.lash_event_get_type(event) if event_type == lash.LASH_Quit: print("LASH ordered quit.") return False elif event_type == lash.LASH_Save_File: print("LASH ordered to save data in directory %s" % lash.lash_event_get_string(event)) lash.lash_send_event(lash_client, event) elif event_type == lash.LASH_Save_Data_Set: print("LASH ordered to save data") lash.lash_send_event(lash_client, event) elif event_type == lash.LASH_Restore_Data_Set: print("LASH ordered to restore data") lash.lash_event_destroy(event) elif event_type == lash.LASH_Restore_File: print("LASH ordered to restore data from directory %s" % lash.lash_event_get_string(event)) lash.lash_event_destroy(event) else: print("Got unhandled LASH event, type " + str(event_type)) lash.lash_event_destroy(event) return True event = lash.lash_get_event(lash_client) return True
def lash_check_events(lash_client): event = lash.lash_get_event(lash_client) while event: print repr(event) event_type = lash.lash_event_get_type(event) if event_type == lash.LASH_Quit: print "LASH ordered quit." return False elif event_type == lash.LASH_Save_File: print "LASH ordered to save data in directory %s" % lash.lash_event_get_string(event) lash.lash_send_event(lash_client, event) elif event_type == lash.LASH_Save_Data_Set: print "LASH ordered to save data" lash.lash_send_event(lash_client, event) elif event_type == lash.LASH_Restore_Data_Set: print "LASH ordered to restore data" lash.lash_event_destroy(event) elif event_type == lash.LASH_Restore_File: print "LASH ordered to restore data from directory %s" % lash.lash_event_get_string(event) lash.lash_event_destroy(event) else: print "Got unhandled LASH event, type " + str(event_type) lash.lash_event_destroy(event) return True event = lash.lash_get_event(lash_client) return True
def lash_check_events(self): if self.save: self.save = False if self.current_filename: print("saving on SIGUSR1 request") self.on_save_cb() print("save done") else: print("not saving because filename is not known") return True if not self.lash_client: return True while lash.lash_get_pending_event_count(self.lash_client): event = lash.lash_get_event(self.lash_client) #print repr(event) event_type = lash.lash_event_get_type(event) if event_type == lash.LASH_Quit: print("jack_mixer: LASH ordered quit.") Gtk.main_quit() return False elif event_type == lash.LASH_Save_File: directory = lash.lash_event_get_string(event) print("jack_mixer: LASH ordered to save data in directory %s" % directory) filename = directory + os.sep + "jack_mixer.xml" f = file(filename, "w") self.save_to_xml(f) f.close() lash.lash_send_event(self.lash_client, event) # we crash with double free elif event_type == lash.LASH_Restore_File: directory = lash.lash_event_get_string(event) print( "jack_mixer: LASH ordered to restore data from directory %s" % directory) filename = directory + os.sep + "jack_mixer.xml" f = file(filename, "r") self.load_from_xml(f, silence_errors=True) f.close() lash.lash_send_event(self.lash_client, event) else: print("jack_mixer: Got unhandled LASH event, type " + str(event_type)) return True #lash.lash_event_destroy(event) return True