summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFred Sundvik <fsundvik@gmail.com>2017-04-08 21:30:11 +0300
committerFred Sundvik <fsundvik@gmail.com>2017-04-09 18:34:59 +0300
commit3074269c4a07ff7f1ab2a76ebdb8904cd642e283 (patch)
tree7d38c59d51c84c2022f73fa3f7a264a56c8b6b82
parentdf67169d4260881443d88b142855d4aa2def6dc3 (diff)
downloadqmk_firmware-3074269c4a07ff7f1ab2a76ebdb8904cd642e283.tar.gz
qmk_firmware-3074269c4a07ff7f1ab2a76ebdb8904cd642e283.zip
Move the logo drawing keyframe to lcd_keyframes
-rw-r--r--keyboards/ergodox/infinity/visualizer.c22
-rw-r--r--keyboards/ergodox/keymaps/default/visualizer.c22
-rw-r--r--quantum/visualizer/lcd_keyframes.c19
-rw-r--r--quantum/visualizer/lcd_keyframes.h2
4 files changed, 25 insertions, 40 deletions
diff --git a/keyboards/ergodox/infinity/visualizer.c b/keyboards/ergodox/infinity/visualizer.c
index 90933b00a4..bac85c593c 100644
--- a/keyboards/ergodox/infinity/visualizer.c
+++ b/keyboards/ergodox/infinity/visualizer.c
@@ -72,24 +72,6 @@ static visualizer_user_data_t user_data_keyboard = {
_Static_assert(sizeof(visualizer_user_data_t) <= VISUALIZER_USER_DATA_SIZE,
"Please increase the VISUALIZER_USER_DATA_SIZE");
-bool display_logo(keyframe_animation_t* animation, visualizer_state_t* state) {
- (void)state;
- (void)animation;
- (void)state;
- // Read the uGFX documentation for information how to use the displays
- // http://wiki.ugfx.org/index.php/Main_Page
- gdispClear(White);
-
- // You can use static variables for things that can't be found in the animation
- // or state structs, here we use the image
-
- //gdispGBlitArea is a tricky function to use since it supports blitting part of the image
- // if you have full screen image, then just use 128 and 32 for both source and target dimensions
- gdispGBlitArea(GDISP, 0, 0, 128, 32, 0, 0, 128, (pixel_t*)resource_lcd_logo);
-
- return false;
-}
-
// Feel free to modify the animations below, or even add new ones if needed
// Don't worry, if the startup animation is long, you can use the keyboard like normal
@@ -99,7 +81,7 @@ static keyframe_animation_t startup_animation = {
.loop = false,
.frame_lengths = {0, gfxMillisecondsToTicks(10000), 0},
.frame_functions = {
- display_logo,
+ lcd_keyframe_draw_logo,
backlight_keyframe_animate_color,
},
};
@@ -162,7 +144,7 @@ static keyframe_animation_t resume_animation = {
.frame_functions = {
lcd_keyframe_enable,
backlight_keyframe_enable,
- display_logo,
+ lcd_keyframe_draw_logo,
backlight_keyframe_animate_color,
},
};
diff --git a/keyboards/ergodox/keymaps/default/visualizer.c b/keyboards/ergodox/keymaps/default/visualizer.c
index f03702f602..afa6f1bdd7 100644
--- a/keyboards/ergodox/keymaps/default/visualizer.c
+++ b/keyboards/ergodox/keymaps/default/visualizer.c
@@ -46,24 +46,6 @@ typedef enum {
static lcd_state_t lcd_state = LCD_STATE_INITIAL;
-bool display_logo(keyframe_animation_t* animation, visualizer_state_t* state) {
- (void)state;
- (void)animation;
- (void)state;
- // Read the uGFX documentation for information how to use the displays
- // http://wiki.ugfx.org/index.php/Main_Page
- gdispClear(White);
-
- // You can use static variables for things that can't be found in the animation
- // or state structs, here we use the image
-
- //gdispGBlitArea is a tricky function to use since it supports blitting part of the image
- // if you have full screen image, then just use 128 and 32 for both source and target dimensions
- gdispGBlitArea(GDISP, 0, 0, 128, 32, 0, 0, 128, (pixel_t*)resource_lcd_logo);
-
- return false;
-}
-
// Feel free to modify the animations below, or even add new ones if needed
// Don't worry, if the startup animation is long, you can use the keyboard like normal
@@ -73,7 +55,7 @@ static keyframe_animation_t startup_animation = {
.loop = false,
.frame_lengths = {0, gfxMillisecondsToTicks(10000), 0},
.frame_functions = {
- display_logo,
+ lcd_keyframe_draw_logo,
backlight_keyframe_animate_color,
},
};
@@ -104,7 +86,7 @@ static keyframe_animation_t resume_animation = {
.frame_functions = {
lcd_keyframe_enable,
backlight_keyframe_enable,
- display_logo,
+ lcd_keyframe_draw_logo,
backlight_keyframe_animate_color,
},
};
diff --git a/quantum/visualizer/lcd_keyframes.c b/quantum/visualizer/lcd_keyframes.c
index c6e04d0ca4..df11861ddc 100644
--- a/quantum/visualizer/lcd_keyframes.c
+++ b/quantum/visualizer/lcd_keyframes.c
@@ -18,6 +18,7 @@
#include <string.h>
#include "action_util.h"
#include "led.h"
+#include "resources/resources.h"
bool lcd_keyframe_display_layer_text(keyframe_animation_t* animation, visualizer_state_t* state) {
(void)animation;
@@ -154,6 +155,24 @@ bool lcd_keyframe_display_layer_and_led_states(keyframe_animation_t* animation,
return false;
}
+bool lcd_keyframe_draw_logo(keyframe_animation_t* animation, visualizer_state_t* state) {
+ (void)state;
+ (void)animation;
+ // Read the uGFX documentation for information how to use the displays
+ // http://wiki.ugfx.org/index.php/Main_Page
+ gdispClear(White);
+
+ // You can use static variables for things that can't be found in the animation
+ // or state structs, here we use the image
+
+ //gdispGBlitArea is a tricky function to use since it supports blitting part of the image
+ // if you have full screen image, then just use 128 and 32 for both source and target dimensions
+ gdispGBlitArea(GDISP, 0, 0, 128, 32, 0, 0, 128, (pixel_t*)resource_lcd_logo);
+
+ return false;
+}
+
+
bool lcd_keyframe_disable(keyframe_animation_t* animation, visualizer_state_t* state) {
(void)animation;
(void)state;
diff --git a/quantum/visualizer/lcd_keyframes.h b/quantum/visualizer/lcd_keyframes.h
index 8f79a541c8..2e912b4c73 100644
--- a/quantum/visualizer/lcd_keyframes.h
+++ b/quantum/visualizer/lcd_keyframes.h
@@ -29,6 +29,8 @@ bool lcd_keyframe_display_mods_bitmap(keyframe_animation_t* animation, visualize
bool lcd_keyframe_display_led_states(keyframe_animation_t* animation, visualizer_state_t* state);
// Displays both the layer text and the led states
bool lcd_keyframe_display_layer_and_led_states(keyframe_animation_t* animation, visualizer_state_t* state);
+// Displays the QMK logo on the LCD screen
+bool lcd_keyframe_draw_logo(keyframe_animation_t* animation, visualizer_state_t* state);
bool lcd_keyframe_disable(keyframe_animation_t* animation, visualizer_state_t* state);
bool lcd_keyframe_enable(keyframe_animation_t* animation, visualizer_state_t* state);