diff options
| author | Syndamia <kamen.d.mladenov@protonmail.com> | 2020-09-29 22:43:00 +0300 |
|---|---|---|
| committer | Syndamia <kamen.d.mladenov@protonmail.com> | 2020-09-29 22:43:00 +0300 |
| commit | 9a24decd41726ef54fa6613d09829f3f65627b22 (patch) | |
| tree | e65d5dbc8623cf4b257abaa8fb9047f3c97fe5a0 /Python/venv1/Lib/site-packages/keyboard/_generic.py | |
| parent | 6f4cfe7b5c6c74d83b03e18870aeb6977db6c0de (diff) | |
| download | Self-learning-9a24decd41726ef54fa6613d09829f3f65627b22.tar Self-learning-9a24decd41726ef54fa6613d09829f3f65627b22.tar.gz Self-learning-9a24decd41726ef54fa6613d09829f3f65627b22.zip | |
Removed python setup files
Diffstat (limited to 'Python/venv1/Lib/site-packages/keyboard/_generic.py')
| -rw-r--r-- | Python/venv1/Lib/site-packages/keyboard/_generic.py | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/Python/venv1/Lib/site-packages/keyboard/_generic.py b/Python/venv1/Lib/site-packages/keyboard/_generic.py deleted file mode 100644 index 762858d..0000000 --- a/Python/venv1/Lib/site-packages/keyboard/_generic.py +++ /dev/null @@ -1,73 +0,0 @@ -# -*- coding: utf-8 -*- -from threading import Thread, Lock -import traceback -import functools - -try: - from queue import Queue -except ImportError: - from Queue import Queue - -class GenericListener(object): - lock = Lock() - - def __init__(self): - self.handlers = [] - self.listening = False - self.queue = Queue() - - def invoke_handlers(self, event): - for handler in self.handlers: - try: - if handler(event): - # Stop processing this hotkey. - return 1 - except Exception as e: - traceback.print_exc() - - def start_if_necessary(self): - """ - Starts the listening thread if it wans't already. - """ - self.lock.acquire() - try: - if not self.listening: - self.init() - - self.listening = True - self.listening_thread = Thread(target=self.listen) - self.listening_thread.daemon = True - self.listening_thread.start() - - self.processing_thread = Thread(target=self.process) - self.processing_thread.daemon = True - self.processing_thread.start() - finally: - self.lock.release() - - def pre_process_event(self, event): - raise NotImplementedError('This method should be implemented in the child class.') - - def process(self): - """ - Loops over the underlying queue of events and processes them in order. - """ - assert self.queue is not None - while True: - event = self.queue.get() - if self.pre_process_event(event): - self.invoke_handlers(event) - self.queue.task_done() - - def add_handler(self, handler): - """ - Adds a function to receive each event captured, starting the capturing - process if necessary. - """ - self.start_if_necessary() - self.handlers.append(handler) - - def remove_handler(self, handler): - """ Removes a previously added event handler. """ - while handler in self.handlers: - self.handlers.remove(handler) |
