qmk_firmware

QMK firmware for my keyboards (Corne, Sweep Ferris) and trackball (Ploopy Adept)
Log | Files | Refs | Submodules | LICENSE

layer_state_reader.c (832B)


      1 #include "action_layer.h"
      2 #include <stdio.h>
      3 
      4 #define L_BASE 0
      5 #define L_LOWER (1 << 1)
      6 #define L_RAISE (1 << 2)
      7 #define L_ADJUST (1 << 3)
      8 #define L_ADJUST_TRI (L_ADJUST | L_RAISE | L_LOWER)
      9 
     10 char layer_state_str[24];
     11 
     12 const char *read_layer_state(void) {
     13   switch (layer_state)
     14   {
     15   case L_BASE:
     16     snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Base");
     17     break;
     18   case L_RAISE:
     19     snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Raise");
     20     break;
     21   case L_LOWER:
     22     snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Lower");
     23     break;
     24   case L_ADJUST:
     25   case L_ADJUST_TRI:
     26     snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Adjust");
     27     break;
     28   default:
     29     snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%u", layer_state);
     30   }
     31 
     32   return layer_state_str;
     33 }