logo

qmk_firmware

custom branch of QMK firmware git clone https://anongit.hacktivis.me/git/qmk_firmware.git

layer_state_reader.c (1010B)


  1. #include <stdio.h>
  2. #include "action_layer.h"
  3. // in the future, should use (1U<<_LAYER_NAME) instead, but needs to be moved to keymap,c
  4. #define L_BASE 0
  5. #define L_LOWER 2
  6. #define L_RAISE 4
  7. #define L_ADJUST 8
  8. #define L_ADJUST_TRI 14
  9. char layer_state_str[24];
  10. const char *read_layer_state(void) {
  11. switch (layer_state)
  12. {
  13. case L_BASE:
  14. snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Default");
  15. break;
  16. case L_RAISE:
  17. snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Raise");
  18. break;
  19. case L_LOWER:
  20. snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Lower");
  21. break;
  22. case L_ADJUST:
  23. case L_ADJUST_TRI:
  24. snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Adjust");
  25. break;
  26. default:
  27. #if defined (LAYER_STATE_32BIT)
  28. snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state);
  29. #else
  30. snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%d", layer_state);
  31. #endif
  32. }
  33. return layer_state_str;
  34. }