adding macro_utils and then implementing them in the default numpad app.

This commit is contained in:
Lucas Oskorep
2022-09-20 01:38:32 -04:00
parent 44aaa083cc
commit cb4dac9d6b
4 changed files with 76 additions and 31 deletions
+2 -1
View File
@@ -1,2 +1,3 @@
from .static_lighting import *
from .helpers import *
from .helpers import *
from .macro_utils import *
-6
View File
@@ -1,6 +0,0 @@
from adafruit_hid.keycode import Keycode
class Key(object):
def __init__(self, name, keycode:Keycodes):
self.name = name
self.code = keycode
+20
View File
@@ -0,0 +1,20 @@
class Macro(object):
def __init__(self, name, *codes, released = None):
self.name = name
self.codes = codes
self.released = released
class MacroSet(object):
def __init__(self, key_macros: [Macro], encoder_up: Macro, encoder_down: Macro):
if len(key_macros) != 12:
raise ValueError("12 keys must be passed to a keyset")
self._key_macros = key_macros
self.encoder_up = encoder_up
self.encoder_down = encoder_down
def get_macro_from_key(self, key_index) -> Macro:
if key_index < 0 or key_index > 11:
raise ValueError("Invalid key index")
return self._key_macros[key_index]