diff --git a/quantum/rgblight.h b/quantum/rgblight.h index ba010dfae3..66ff97e9df 100644 --- a/quantum/rgblight.h +++ b/quantum/rgblight.h @@ -16,10 +16,19 @@ #ifndef RGBLIGHT_H #define RGBLIGHT_H +#define _RGBM_SINGLE(sym) RGBLIGHT_MODE_ ## sym, +#define _RGBM_MULTI(sym) RGBLIGHT_MODE_ ## sym, +#define _RGBM_TMP(sym) RGBLIGHT_MODE_ ## sym, +enum RGBLIGHT_EFFECT_MODE { + RGBLIGHT_MODE_zero = 0, +#include "rgblight.h" + RGBLIGHT_MODE_end +}; + #ifdef RGBLIGHT_ANIMATIONS - #define RGBLIGHT_MODES 36 + #define RGBLIGHT_MODES (RGBLIGHT_MODE_end-1) #else - #define RGBLIGHT_MODES 1 + #define RGBLIGHT_MODES 1 #endif #ifndef RGBLIGHT_EFFECT_BREATHE_CENTER @@ -169,3 +178,46 @@ void rgblight_effect_rgbtest(void); void rgblight_effect_alternating(void); #endif + +#ifdef _RGBM_SINGLE + _RGBM_SINGLE( STATIC_LIGHT ) + _RGBM_MULTI( BREATHING ) + _RGBM_TMP( breathing_3 ) + _RGBM_TMP( breathing_4 ) + _RGBM_TMP( BREATHING_end ) + _RGBM_MULTI( RAINBOW_MOOD ) + _RGBM_TMP( rainbow_mood_7 ) + _RGBM_TMP( RAINBOW_MOOD_end ) + _RGBM_MULTI( RAINBOW_SWIRL ) + _RGBM_TMP( rainbow_swirl_10 ) + _RGBM_TMP( rainbow_swirl_11 ) + _RGBM_TMP( rainbow_swirl_12 ) + _RGBM_TMP( rainbow_swirl_13 ) + _RGBM_TMP( RAINBOW_SWIRL_end ) + _RGBM_MULTI( SNAKE ) + _RGBM_TMP( snake_16 ) + _RGBM_TMP( snake_17 ) + _RGBM_TMP( snake_18 ) + _RGBM_TMP( snake_19 ) + _RGBM_TMP( SNAKE_end ) + _RGBM_MULTI( KNIGHT ) + _RGBM_TMP( knight_22 ) + _RGBM_TMP( KNIGHT_end ) + _RGBM_SINGLE( CHRISTMAS ) + _RGBM_MULTI( STATIC_GRADIENT ) + _RGBM_TMP( static_gradient_26 ) + _RGBM_TMP( static_gradient_27 ) + _RGBM_TMP( static_gradient_28 ) + _RGBM_TMP( static_gradient_29 ) + _RGBM_TMP( static_gradient_30 ) + _RGBM_TMP( static_gradient_31 ) + _RGBM_TMP( static_gradient_32 ) + _RGBM_TMP( static_gradient_33 ) + _RGBM_TMP( STATIC_GRADIENT_end ) + _RGBM_SINGLE( RGB_TEST ) + _RGBM_SINGLE( ALTERNATING ) +#endif + +#undef _RGBM_SINGLE +#undef _RGBM_MULTI +#undef _RGBM_TMP