def wait(self, stage=STATE_CHANNELS_LOADED): loop = MainLoop(None, True) def data_ready_cb(new_stage): if new_stage >= stage: loop.quit() self.__service.connect_to_signal('DataReady', data_ready_cb) if self.__service.GetDataStage() >= stage: loop.quit() progress_id = 0 if loop.is_running(): if sys.stdout.isatty(): progress = ['-\r', '\\\r', '|\r', '/\r'] def progress_cb(): c = progress.pop(0) sys.stdout.write(c) sys.stdout.flush() progress.append(c) return True progress_id = timeout_add(250, progress_cb) sys.stdout.write(' loading...\r') loop.run() if progress_id: source_remove(progress_id) sys.stdout.write('\r\033[K') sys.stdout.flush()
def wait(self, stage=STATE_CHANNELS_LOADED): loop = MainLoop(None, True) def data_ready_cb(new_stage): if new_stage >= stage: loop.quit() self.__service.connect_to_signal('DataReady', data_ready_cb) if self.__service.GetDataStage() >= stage: loop.quit() progress_id = 0 if loop.is_running(): if sys.stdout.isatty(): progress = ['-\r', '\\\r', '|\r', '/\r'] def progress_cb(): c = progress.pop(0) sys.stdout.write(c) sys.stdout.flush() progress.append(c) return True progress_id = timeout_add(250, progress_cb) sys.stdout.write(' loading...\r') loop.run() if progress_id: source_remove(progress_id) sys.stdout.write('\r\033[K') sys.stdout.flush()