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