def __init__(self, url, on_success=None, on_error=None, on_progress=None, req_body=None, req_headers=None, chunk_size=8192, timeout=None, method=None, debug=False): super(UrlRequest, self).__init__() self._queue = deque() self._trigger_result = Clock.create_trigger(self._dispatch_result, 0) self.daemon = True self.on_success = WeakMethod(on_success) if on_success else None self.on_error = WeakMethod(on_error) if on_error else None self.on_progress = WeakMethod(on_progress) if on_progress else None self._debug = debug self._result = None self._error = None self._is_finished = False self._resp_status = None self._resp_headers = None self._resp_length = -1 self._chunk_size = chunk_size self._timeout = timeout self._method = method #: Url of the request self.url = url #: Request body passed in __init__ self.req_body = req_body #: Request headers passed in __init__ self.req_headers = req_headers # save our request to prevent GC g_requests.append(self) self.start()
def __init__(self, url, on_success=None, on_redirect=None, on_failure=None, on_error=None, on_progress=None, req_body=None, req_headers=None, chunk_size=8192, timeout=None, method=None, decode=True, debug=False, file_path=None, ca_file=None, verify=True, proxy_host=None, proxy_port=None, proxy_headers=None): super(UrlRequest, self).__init__() self._queue = deque() self._trigger_result = Clock.create_trigger(self._dispatch_result, 0) self.daemon = True self.on_success = WeakMethod(on_success) if on_success else None self.on_redirect = WeakMethod(on_redirect) if on_redirect else None self.on_failure = WeakMethod(on_failure) if on_failure else None self.on_error = WeakMethod(on_error) if on_error else None self.on_progress = WeakMethod(on_progress) if on_progress else None self.decode = decode self.file_path = file_path self._debug = debug self._result = None self._error = None self._is_finished = False self._resp_status = None self._resp_headers = None self._resp_length = -1 self._chunk_size = chunk_size self._timeout = timeout self._method = method self.ca_file = ca_file self.verify = verify self._proxy_host = proxy_host self._proxy_port = proxy_port self._proxy_headers = proxy_headers #: Url of the request self.url = url #: Request body passed in __init__ self.req_body = req_body #: Request headers passed in __init__ self.req_headers = req_headers # save our request to prevent GC g_requests.append(self) self.start()
def __init__(self, on_click=None, on_cancel=None, on_dismiss=None, on_time_set=None): self._on_click = WeakMethod(on_click) if on_click else None self._on_cancel = WeakMethod(on_cancel) if on_cancel else None self._on_dismiss = WeakMethod(on_dismiss) if on_dismiss else None self._on_time_set = WeakMethod(on_time_set) if on_time_set else None super(BaseListener, self).__init__()
def test_weak_method_func(): from kivy.weakmethod import WeakMethod def do_something(): pass weak_method = WeakMethod(do_something) assert not weak_method.is_dead() assert weak_method() == do_something assert weak_method == WeakMethod(do_something) del do_something gc.collect() assert not weak_method.is_dead() assert weak_method() is not None
def __init__(self, **kwargs): self._ffplayer = None self._thread = None self._next_frame = None self._ffplayer_need_quit = False self._callback_ref = WeakMethod(self._player_callback) self._trigger = Clock.create_trigger(self._redraw) super(VideoFFPy, self).__init__(**kwargs)
def on_start(self): self.callback_ref = WeakMethod(self.callback) filename = sys.argv[1] logging.info('ffpyplayer: Playing file "{}"'.format(filename)) # try ff_opts = {'vf':'edgedetect'} http://ffmpeg.org/ffmpeg-filters.html ff_opts = {} self.ffplayer = MediaPlayer(filename, callback=self.callback_ref, loglevel=log_level, ff_opts=ff_opts) self._thread.start() self.keyboard = Window.request_keyboard(None, self.root) self.keyboard.bind(on_key_down=self.on_keyboard_down)
def __init__(self, **kwargs): self._ffplayer = None self._next_frame = None self.quitted = False self._log_callback_set = False self._callback_ref = WeakMethod(self._player_callback) if not get_log_callback(): set_log_callback(_log_callback) self._log_callback_set = True super(VideoFFPy, self).__init__(**kwargs)
def __init__(self, **kwargs): self._ffplayer = None self.quitted = False self._log_callback_set = False self._state = '' self.state = 'stop' self._callback_ref = WeakMethod(self._player_callback) if not get_log_callback(): set_log_callback(_log_callback) self._log_callback_set = True super(SoundFFPy, self).__init__(**kwargs)
class _Event(object): def __init__(self, loop, callback, timeout, starttime): self.loop = loop self.callback = WeakMethod(callback) self.timeout = timeout self._last_dt = starttime self._dt = 0. def do(self, dt): if self.callback.is_dead(): return False self.callback()(dt) def tick(self, curtime): # timeout happen ? if curtime - self._last_dt < self.timeout: return True # calculate current timediff for this event self._dt = curtime - self._last_dt self._last_dt = curtime # call the callback if self.callback.is_dead(): return False ret = self.callback()(self._dt) # if it's a once event, don't care about the result # just remove the event if not self.loop: return False # if the user returns False explicitly, # remove the event if ret is False: return False return True
def test_weak_method_on_obj(): from kivy.weakmethod import WeakMethod class SomeClass: def do_something(self): pass obj = SomeClass() weak_method = WeakMethod(obj.do_something) assert not weak_method.is_dead() assert weak_method() == obj.do_something assert weak_method == WeakMethod(obj.do_something) assert weak_method != WeakMethod(SomeClass().do_something) del obj gc.collect() assert weak_method.is_dead() assert weak_method() is None assert weak_method != WeakMethod(SomeClass().do_something)
def release(self): self.weak_callback = WeakMethod(self.callback) self.callback = None
def __init__(self, loop, callback, timeout, starttime): self.loop = loop self.callback = WeakMethod(callback) self.timeout = timeout self._last_dt = starttime self._dt = 0.
def __init__(self, on_click=None): self._on_click = WeakMethod(on_click) if on_click else None super(OnMultiChoiceClickListener, self).__init__()