diff options
author | Max Rumpf <max.rumpf1998@gmail.com> | 2019-06-26 22:42:14 +0200 |
---|---|---|
committer | Drashna Jaelre <drashna@live.com> | 2019-06-26 13:42:14 -0700 |
commit | 49699294b63b1fd36c504d4949dd6fbb19442cf3 (patch) | |
tree | 96fa9c5a2a7cd0f947d38ad6b7517ece55d1f94c /keyboards/maxr1998/pulse4k/pulse4k.c | |
parent | d4ff836d6449b442e6f5ddc31678a489d0f6b3d6 (diff) | |
download | qmk_firmware-49699294b63b1fd36c504d4949dd6fbb19442cf3.tar.gz qmk_firmware-49699294b63b1fd36c504d4949dd6fbb19442cf3.zip |
[Keyboard] Add Pulse 4k, a macropad by Maxr1998 (#6195)
* Add Pulse 4k, a macropad by Maxr1998
* Some config tweaks
* Remove image note
* Add license headers
* Fix media keys
* Remove Play/pause again as it doesn't work on Linux
Diffstat (limited to 'keyboards/maxr1998/pulse4k/pulse4k.c')
-rw-r--r-- | keyboards/maxr1998/pulse4k/pulse4k.c | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/keyboards/maxr1998/pulse4k/pulse4k.c b/keyboards/maxr1998/pulse4k/pulse4k.c new file mode 100644 index 0000000000..ee3d41ccd1 --- /dev/null +++ b/keyboards/maxr1998/pulse4k/pulse4k.c @@ -0,0 +1,61 @@ +/* +Copyright (C) 2019 Maxr1998 <max.rumpf1998@gmail.com> + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see <http://www.gnu.org/licenses/>. +*/ + +#include "pulse4k.h" +#include "rgblight.h" + +enum combo_events { + LED_ADJUST +}; + +const uint16_t PROGMEM led_adjust_combo[] = {KC_LEFT, KC_RGHT, COMBO_END}; + +combo_t key_combos[COMBO_COUNT] = { + [LED_ADJUST] = COMBO_ACTION(led_adjust_combo) +}; + +bool led_adjust_active = false; + +void matrix_init_kb(void) { + matrix_init_user(); +} + +void process_combo_event(uint8_t combo_index, bool pressed) { + if (combo_index == LED_ADJUST) { + led_adjust_active = pressed; + } +} + +void encoder_update_kb(uint8_t index, bool clockwise) { + if (index == 0) { + if (led_adjust_active) { + if (clockwise) { + rgblight_increase_val(); + } else { + rgblight_decrease_val(); + } + } else encoder_one_update(clockwise); + } else if (index == 1) { + if (led_adjust_active) { + if (clockwise) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + } else encoder_two_update(clockwise); + } +} |