def server_line_callback(self, line): self.server_lines.append(line.rstrip()) self.server_lines = [ line for line in self.server_lines if line != '>' ] self.server_lines = self.server_lines[-10:] ui.execute_later(self.update_server_console) if client.client: client.client.server_line_callback(line)
def save_and_sync_next_step(old_set): name_set = None start_time = time.time() stop = False while not stop: print 'finding save...' dir = save.get_save_dir() listing = list_saves(dir) new_set = set(listing) name_set = new_set - old_set if not name_set: for name in listing: mtime = os.path.getmtime(os.path.join(dir, name)) if mtime > start_time: stop = True break time.sleep(0.5) else: stop = True name = iter(name_set).next() break print 'found save', name time.sleep(0.5) ui.execute_later( lambda: upload_save(save.get_save_dir() + '/' + name, name))
def change(type, val): tpl[type] += val * 10 tpl[0] -= val * 10 a, b, c = map(lambda x: max(0, min(100, x)), tpl) self.client.set_tax_values(a, b, c) ui.get_screen().tick() self.update() ui.execute_later(self.update)
def comment_upload(install_time): ui.execute_later(lambda: ui.message('Compressing log...')) content = lzma.compress(open(save.get_save_dir() + '/more.log').read()) ui.execute_later(lambda: ui.back()) request(lambda result: comment_next(install_time), 'upload_log', content, install_time, banner="Uploading log (%dkB)" % (len(content)/1024))
def wait(): if DropboxHelper.result: jlist = DropboxHelper.result print jlist DropboxHelper.printList(jlist) saves = jlist_to_list(jlist) load_dialog(saves) else: ui.execute_later(wait)
def init(): print 'DropboxHelper init' global DropboxHelper if not DropboxHelper: DropboxHelper = jnius_reflect.autoclass('com.zielm.freeciv.DropboxHelper') print 'initializing DropboxHelper tokens' tokenKey = features.get('civsync.key') tokenSecret = features.get('civsync.secret') DropboxHelper.setTokens(tokenKey, tokenSecret) DropboxHelper.init() ui.execute_later(_message_checker)
def init(): print "DropboxHelper init" global DropboxHelper if not DropboxHelper: DropboxHelper = jnius_reflect.autoclass("com.zielm.freeciv.DropboxHelper") print "initializing DropboxHelper tokens" tokenKey = features.get("civsync.key") tokenSecret = features.get("civsync.secret") DropboxHelper.setTokens(tokenKey, tokenSecret) DropboxHelper.init() ui.execute_later(_message_checker)
def init(): print 'DropboxHelper init' global DropboxHelper if not DropboxHelper: DropboxHelper = jnius_reflect.autoclass( 'com.zielm.freeciv.DropboxHelper') print 'initializing DropboxHelper tokens' tokenKey = features.get('civsync.key') tokenSecret = features.get('civsync.secret') DropboxHelper.setTokens(tokenKey, tokenSecret) DropboxHelper.init() ui.execute_later(_message_checker)
def client_main(): if try_resume(): ui.main() return ui.set(ui.Label('loading...')) ui.execute_later(app_main) if features.get('app.profile'): profile_main() else: ui.main()
def comment_upload(install_time): ui.execute_later(lambda: ui.message('Compressing log...')) content = lzma.compress(open(save.get_save_dir() + '/more.log').read()) ui.execute_later(lambda: ui.back()) request(lambda result: comment_next(install_time), 'upload_log', content, install_time, banner="Uploading log (%dkB)" % (len(content) / 1024))
def _message_checker(): if DropboxHelper.needAuth: print 'Authentication requested by DropboxHelper' DropboxHelper.needAuth = False features.set_perm('civsync.key', None) features.set_perm('civsync.secret', None) login() msg = DropboxHelper.getMessage() if msg: print 'showing message from DropboxHelper', msg ui.message(msg) ui.execute_later(_message_checker)
def save_and_sync_next_step(old_set): name_set = None start_time = time.time() stop = False while not stop: print 'finding save...' dir = save.get_save_dir() listing = list_saves(dir) new_set = set(listing) name_set = new_set - old_set if not name_set: for name in listing: mtime = os.path.getmtime(os.path.join(dir, name)) if mtime > start_time: stop = True break time.sleep(0.5) else: stop = True name = iter(name_set).next() break print 'found save', name time.sleep(0.5) ui.execute_later(lambda: upload_save(save.get_save_dir() + '/' + name, name))
def sync_request(callback, name, args, kwargs): func = getattr(client(), name) try: try: result = func(*args, **kwargs) except civsync.LoginError as err: print 'Login failed:', err ui.back(anim=False) self = lambda: request(callback, name, *args, **kwargs) ui.execute_later(lambda: show_login_form(self, str(err))) return except Exception as err: traceback.print_exc() ui.back(anim=False) ui.execute_later(lambda: ui.message('Failed to connect to the internet')) return ui.back(anim=False) ui.execute_later(lambda: callback(result))
def sync_request(callback, name, args, kwargs): func = getattr(client(), name) try: try: result = func(*args, **kwargs) except civsync.LoginError as err: print 'Login failed:', err ui.back(anim=False) self = lambda: request(callback, name, *args, **kwargs) ui.execute_later(lambda: show_login_form(self, str(err))) return except Exception as err: traceback.print_exc() ui.back(anim=False) ui.execute_later( lambda: ui.message('Failed to connect to the internet')) return ui.back(anim=False) ui.execute_later(lambda: callback(result))
def notify_update(url): print 'update found at', url time.sleep(1) ui.execute_later(lambda: menus.notify_update(url))
def _check_finish(): if DropboxHelper.authFinished: _auth_finished() else: ui.execute_later(_check_finish)
def loop(): input = os.fdopen(features.get('ctrl.fd'), 'r', 1) for line in iter(input.readline, ''): message = json.loads(line) ui.execute_later(functools.partial(process_message, message))
def callback(): button.set_text('Loading...') button.callback = None ui.execute_later(lambda: uidialog.open_url(url))
def run_marketnotice(): ui.user_time_sleep(20 * 60) ui.execute_later(show_marketnotice)
def check_downloaded(): if DropboxHelper.downloaded: if DropboxHelper.downloadedSuccess: download_success() else: ui.execute_later(check_downloaded)