aboutsummaryrefslogtreecommitdiff
path: root/keyboards/ergodox/keymaps/default/visualizer.c
diff options
context:
space:
mode:
authorDamien <Dbroqua@users.noreply.github.com>2017-04-13 13:26:02 +0200
committerGitHub <noreply@github.com>2017-04-13 13:26:02 +0200
commita43cb6c0af3ac616903172c4b8932bfc5ee4939b (patch)
treec3ca94b544ab832507b37b6268bb04f7f7eedb4a /keyboards/ergodox/keymaps/default/visualizer.c
parent3e41cde9f99778ca30c03b97470c32780379db43 (diff)
parentd3301c0f8b0005738ab9aa2030d83739ffb5c4b6 (diff)
downloadqmk_firmware-a43cb6c0af3ac616903172c4b8932bfc5ee4939b.tar.gz
qmk_firmware-a43cb6c0af3ac616903172c4b8932bfc5ee4939b.zip
Merge pull request #20 from qmk/master
Merge from QMK
Diffstat (limited to 'keyboards/ergodox/keymaps/default/visualizer.c')
-rw-r--r--keyboards/ergodox/keymaps/default/visualizer.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/keyboards/ergodox/keymaps/default/visualizer.c b/keyboards/ergodox/keymaps/default/visualizer.c
new file mode 100644
index 000000000..502e53f3d
--- /dev/null
+++ b/keyboards/ergodox/keymaps/default/visualizer.c
@@ -0,0 +1,42 @@
1/*
2Copyright 2017 Fred Sundvik
3
4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by
6the Free Software Foundation, either version 2 of the License, or
7(at your option) any later version.
8
9This program is distributed in the hope that it will be useful,
10but WITHOUT ANY WARRANTY; without even the implied warranty of
11MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12GNU General Public License for more details.
13
14You should have received a copy of the GNU General Public License
15along with this program. If not, see <http://www.gnu.org/licenses/>.
16*/
17
18#include "simple_visualizer.h"
19
20// This function should be implemented by the keymap visualizer
21// Don't change anything else than state->target_lcd_color and state->layer_text as that's the only thing
22// that the simple_visualizer assumes that you are updating
23// Also make sure that the buffer passed to state->layer_text remains valid until the previous animation is
24// stopped. This can be done by either double buffering it or by using constant strings
25static void get_visualizer_layer_and_color(visualizer_state_t* state) {
26 uint8_t saturation = 60;
27 if (state->status.leds & (1u << USB_LED_CAPS_LOCK)) {
28 saturation = 255;
29 }
30 if (state->status.layer & 0x4) {
31 state->target_lcd_color = LCD_COLOR(0, saturation, 0xFF);
32 state->layer_text = "Media & Mouse";
33 }
34 else if (state->status.layer & 0x2) {
35 state->target_lcd_color = LCD_COLOR(168, saturation, 0xFF);
36 state->layer_text = "Symbol";
37 }
38 else {
39 state->target_lcd_color = LCD_COLOR(84, saturation, 0xFF);
40 state->layer_text = "Default";
41 }
42}