You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

130 lines
2.7 KiB

  1. /*
  2. Copyright 2018 Cole Markham
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 2 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #include QMK_KEYBOARD_H
  15. #define _______ KC_TRNS
  16. enum custom_keycodes {
  17. BL = SAFE_RANGE,
  18. WK_RED,
  19. WK_GREEN,
  20. WK_BLUE
  21. };
  22. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  23. [0] = LAYOUT(
  24. KC_NLCK, KC_PSLS, KC_PAST, KC_ESC,
  25. KC_P7, KC_P8, KC_P9, KC_PMNS,
  26. KC_P4, KC_P5, KC_P6, KC_PPLS,
  27. KC_P1, KC_P2, KC_P3, KC_TAB,
  28. MO(1), KC_P0, KC_PDOT, KC_ENT
  29. ),
  30. [1] = LAYOUT(
  31. _______, BL, RGB_MODE_SWIRL, RESET,
  32. RGB_TOG, RGB_MOD, RGB_MODE_PLAIN, RGB_MODE_SNAKE,
  33. RGB_HUI, RGB_SAI, RGB_VAI, RGB_MODE_KNIGHT,
  34. RGB_HUD, RGB_SAD, RGB_VAD, RGB_MODE_XMAS,
  35. _______, WK_RED, WK_GREEN, WK_BLUE
  36. ),
  37. };
  38. const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
  39. return MACRO_NONE ;
  40. }
  41. void matrix_init_user(void) {
  42. rgblight_setrgb(0,255,0);
  43. }
  44. void matrix_scan_user(void) {
  45. }
  46. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  47. switch (keycode) {
  48. case BL:
  49. if (record->event.pressed) {
  50. #ifdef BACKLIGHT_ENABLE
  51. backlight_step();
  52. #endif
  53. }
  54. return false;
  55. break;
  56. case WK_RED:
  57. if (record->event.pressed) {
  58. rgblight_show_solid_color(0xFF, 0, 0);
  59. } else {
  60. rgblight_show_solid_color(0xFF, 0xFF, 0xFF);
  61. }
  62. return false;
  63. break;
  64. case WK_GREEN:
  65. if (record->event.pressed) {
  66. rgblight_show_solid_color(0, 0xFF, 0);
  67. } else {
  68. rgblight_show_solid_color(0xFF, 0xFF, 0xFF);
  69. }
  70. return false;
  71. break;
  72. case WK_BLUE:
  73. if (record->event.pressed) {
  74. rgblight_show_solid_color(0, 0, 0xFF);
  75. } else {
  76. rgblight_show_solid_color(0xFF, 0xFF, 0xFF);
  77. }
  78. return false;
  79. break;
  80. }
  81. return true;
  82. }
  83. void led_set_user(uint8_t usb_led) {
  84. if (usb_led & (1 << USB_LED_NUM_LOCK)) {
  85. } else {
  86. }
  87. if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
  88. } else {
  89. }
  90. if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
  91. } else {
  92. }
  93. if (usb_led & (1 << USB_LED_COMPOSE)) {
  94. } else {
  95. }
  96. if (usb_led & (1 << USB_LED_KANA)) {
  97. } else {
  98. }
  99. }