Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>pull/58/head
parent
8b3b321c0e
commit
d2ba853594
@ -0,0 +1,21 @@
|
||||
#include "Macros.h"
|
||||
#include "hooks.h"
|
||||
|
||||
__attribute__((weak))
|
||||
void
|
||||
macroAction(uint8_t macroIndex, uint8_t keyState) {
|
||||
}
|
||||
|
||||
static bool handleMacroEvent(Key mappedKey, byte row, byte col, uint8_t keyState) {
|
||||
if (!(mappedKey.flags & (SYNTHETIC|IS_MACRO)))
|
||||
return false;
|
||||
|
||||
macroAction(mappedKey.rawKey, keyState);
|
||||
return true;
|
||||
}
|
||||
|
||||
Macros_::Macros_ (void) {
|
||||
event_handler_hook_add (handleMacroEvent);
|
||||
}
|
||||
|
||||
Macros_ Macros;
|
@ -0,0 +1,27 @@
|
||||
#pragma once
|
||||
|
||||
#include <Arduino.h>
|
||||
#include "key_defs.h"
|
||||
|
||||
#define IS_MACRO B00000001
|
||||
|
||||
#define M(n) (Key){ KEY_FLAGS|SYNTHETIC|IS_MACRO, n}
|
||||
#define Key_macroKey1 M(1)
|
||||
#define Key_macroKey2 M(2)
|
||||
#define Key_macroKey3 M(3)
|
||||
#define Key_macroKey4 M(4)
|
||||
#define Key_macroKey5 M(5)
|
||||
#define Key_macroKey6 M(6)
|
||||
#define Key_macroKey7 M(7)
|
||||
#define Key_macroKey8 M(8)
|
||||
#define Key_macroKey9 M(9)
|
||||
#define Key_macroKey10 M(10)
|
||||
|
||||
void macroAction(uint8_t macroIndex, uint8_t keyState);
|
||||
|
||||
class Macros_ {
|
||||
public:
|
||||
Macros_(void);
|
||||
};
|
||||
|
||||
extern Macros_ Macros;
|
Loading…
Reference in new issue