summaryrefslogtreecommitdiffstats
path: root/keyboards/crkbd/lib/layer_state_reader.c
diff options
context:
space:
mode:
authormarksard <38324387+marksard@users.noreply.github.com>2018-09-04 08:34:16 +0900
committerDrashna Jaelre <drashna@live.com>2018-09-03 16:34:16 -0700
commit35efcc9f398a1a2493b482dd1bd7c859f93ef450 (patch)
tree004b44e13067b8793ad9523340ce0539977bf8b9 /keyboards/crkbd/lib/layer_state_reader.c
parentfa1ee47cf2293d06693b86e8dd188d9fbc9338c4 (diff)
Keyboard: Improvement of crkbd communication functions (based on helix-keyboard) (#3798)
* improvement of crkbd communication functions (based on helix-keyboard) * Removed unnecessary code. * Changed read restriction from #define to #pragma once. * Changed from sizeof to defined size. * moved lib folder to crkbdroot. removed warning of ws2812.d
Diffstat (limited to 'keyboards/crkbd/lib/layer_state_reader.c')
-rw-r--r--keyboards/crkbd/lib/layer_state_reader.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/keyboards/crkbd/lib/layer_state_reader.c b/keyboards/crkbd/lib/layer_state_reader.c
new file mode 100644
index 0000000000..eddb71337e
--- /dev/null
+++ b/keyboards/crkbd/lib/layer_state_reader.c
@@ -0,0 +1,35 @@
+
+#include QMK_KEYBOARD_H
+#include <stdio.h>
+#include "crkbd.h"
+
+#define L_BASE 0
+#define L_LOWER 8
+#define L_RAISE 16
+#define L_ADJUST 65536
+#define L_ADJUST_TRI 65560
+
+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:
+ snprintf(layer_state_str, sizeof(layer_state_str), "Layer: Undef-%ld", layer_state);
+ }
+
+ return layer_state_str;
+}