kbd_firmware/keyboards/crkbd/lib/layer_state_reader.c
foostan d18d94e139 Squashed 'qmk/qmk_firmware/' content from commit b7468f4785
git-subtree-dir: qmk/qmk_firmware
git-subtree-split: b7468f47857ad20a031906ccbd654541222a0d26
2024-01-28 19:36:44 +09:00

39 lines
1005 B
C

#include "quantum.h"
#include <stdio.h>
// in the future, should use (1U<<_LAYER_NAME) instead, but needs to be moved to keymap,c
#define L_BASE 0
#define L_LOWER 2
#define L_RAISE 4
#define L_ADJUST 8
#define L_ADJUST_TRI 14
char layer_state_str[24];
const char *read_layer_state(void) {
switch (layer_state)
{
case L_BASE:
snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Default");
break;
case L_RAISE:
snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Raise");
break;
case L_LOWER:
snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Lower");
break;
case L_ADJUST:
case L_ADJUST_TRI:
snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Adjust");
break;
default:
#if defined (LAYER_STATE_32BIT)
snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state);
#else
snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%d", layer_state);
#endif
}
return layer_state_str;
}