From 68f5acca7fcce44978db015f0d25398c8d965162 Mon Sep 17 00:00:00 2001 From: Kris Lamoureux Date: Fri, 19 Jun 2020 16:18:31 -0400 Subject: [PATCH] Install global event hook for toggle --- macromc.py | 46 ++++++++++++++++++++++++++++++---------------- 1 file changed, 30 insertions(+), 16 deletions(-) diff --git a/macromc.py b/macromc.py index 4ec1d9b..6e7f0e2 100755 --- a/macromc.py +++ b/macromc.py @@ -18,22 +18,36 @@ import keyboard import pyautogui -enabled = False +toggleable = True +state = False -while True: - toggled = keyboard.is_pressed('z') +def main(event): + global toggleable + global state - if toggled: - if enabled: - print("Macro disabled.") - enabled = False - else: - print("Macro enabled.") - enabled = True + # Macro hotkey pressed + if event.name == 'z': + # Toggle + if event.event_type == 'down': - if toggled and not enabled: - pyautogui.mouseUp(0,0) - #pyautogui.keyUp('w') - elif enabled: - pyautogui.mouseDown(0,0) - #pyautogui.keyDown('w') + # Disable macro + if toggleable and state: + print("Toggle disabled") + state = False + pyautogui.mouseUp(0,0) + #keyboard.release('w') + # Enable macro + elif toggleable and not state: + print("Toggle enabled") + state = True + pyautogui.mouseDown(0,0) + #keyboard.press('w') + + toggleable = False + + # Toggleable again + elif event.event_type == 'up': + toggleable = True + +keyboard.hook(main) +keyboard.wait()