QMK/keyboards/betalupi_ergodox/keymaps/default/layers/layers.h

42 lines
1.0 KiB
C

#pragma once
// This header declares custom keycodes
#include "keymap.h"
#define LAYER_INCLUDE_FILE "definitions/layers.inc"
// Generate layer ids
#define BETA_LAYER_KEYS
#define BETA_LAYER(name) LAYER_##name,
enum layer_indices {
#include LAYER_INCLUDE_FILE
X_LAYER_MAX
};
#undef BETA_LAYER
#undef BETA_LAYER_KEYS
// Generate RGBMatrix ids
// We don't use the same id for layers and layer colors
// to save memory. Not every layer has colors!
#define BETA_LAYER_LEDS
#define BETA_LAYER(name) LAYER_##name##_LEDS,
enum led_indices {
#include LAYER_INCLUDE_FILE
X_LAYER_LEDS_MAX
};
#undef BETA_LAYER
#undef BETA_LAYER_LEDS
// We don't need these in the header,
// they shouldn't be used anywhere else.
//const uint16_t PROGMEM keymaps[X_LAYER_MAX][MATRIX_ROWS][MATRIX_COLS];
//const uint8_t PROGMEM ledmaps[X_LAYER_LEDS_MAX][DRIVER_LED_TOTAL][3];
extern uint8_t layer_layouts[];
void set_layer_color(int layer); // Helper method
void rgb_matrix_indicators_user(void); // QMK method
uint32_t layer_state_set_user(uint32_t state); // QMK method