From 981749cfb74ab38e1088538b230a06dbf1561740 Mon Sep 17 00:00:00 2001 From: yellows8 Date: Fri, 3 Jan 2020 11:47:49 -0500 Subject: [PATCH] Added highlightGradientEdgeColor for theme config. --- common/menu.c | 2 +- common/theme.c | 7 ++++++- common/theme.h | 1 + 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/common/menu.c b/common/menu.c index 180fad4..34a95b2 100644 --- a/common/menu.c +++ b/common/menu.c @@ -228,7 +228,7 @@ static void drawEntry(menuEntry_s* me, int off_x, int is_active) { if (is_active) { highlight_multiplier = fmax(0.0, fabs(fmod(menuTimer, 1.0) - 0.5) / 0.5); - border_color = MakeColor(themeCurrent.highlightColor.r + (255 - themeCurrent.highlightColor.r) * highlight_multiplier, themeCurrent.highlightColor.g + (255 - themeCurrent.highlightColor.g) * highlight_multiplier, themeCurrent.highlightColor.b + (255 - themeCurrent.highlightColor.b) * highlight_multiplier, 255); + border_color = MakeColor(themeCurrent.highlightColor.r + (themeCurrent.highlightGradientEdgeColor.r - themeCurrent.highlightColor.r) * highlight_multiplier, themeCurrent.highlightColor.g + (themeCurrent.highlightGradientEdgeColor.g - themeCurrent.highlightColor.g) * highlight_multiplier, themeCurrent.highlightColor.b + (themeCurrent.highlightGradientEdgeColor.b - themeCurrent.highlightColor.b) * highlight_multiplier, 255); border_start_x = start_x-6; border_end_x = end_x+6; border_start_y = start_y-5; diff --git a/common/theme.c b/common/theme.c index 672ecb2..6c10a6b 100644 --- a/common/theme.c +++ b/common/theme.c @@ -97,6 +97,7 @@ void themeStartup(ThemePreset preset) { .backWaveColor = MakeColor(154, 171, 255, 255), .backgroundColor = MakeColor(233, 236, 241, 255), .highlightColor = MakeColor(91, 237, 224, 255), + .highlightGradientEdgeColor = MakeColor(255,255,255,255), .separatorColor = MakeColor(219, 218, 219, 255), .borderColor = MakeColor(255,255,255,255), .borderTextColor = MakeColor(64,64,64,255), @@ -121,6 +122,7 @@ void themeStartup(ThemePreset preset) { .backWaveColor = MakeColor(73, 103, 169, 255), .backgroundColor = MakeColor(45, 45, 50, 255), .highlightColor = MakeColor(91, 237, 224, 255), + .highlightGradientEdgeColor = MakeColor(255,255,255,255), .separatorColor = MakeColor(219, 218, 219, 255), .borderColor = MakeColor(255,255,255,255), .borderTextColor = MakeColor(64,64,64,255), @@ -416,7 +418,7 @@ void themeStartup(ThemePreset preset) { config_t cfg = {0}; config_init(&cfg); config_setting_t *theme = NULL, *layout = NULL, *assets = NULL; - color_t text, logoColor={0}, attentionText, frontWave, middleWave, backWave, background, highlight, separator, borderColor, borderTextColor, progressBarColor; + color_t text, logoColor={0}, attentionText, frontWave, middleWave, backWave, background, highlight, highlightGradientEdgeColor, separator, borderColor, borderTextColor, progressBarColor; int waveBlending; const char *AText, *BText, *XText, *YText, *PText, *MText, *starOnText, *starOffText; bool logoColor_set = false; @@ -475,6 +477,8 @@ void themeStartup(ThemePreset preset) { background = themeDefault->backgroundColor; if (!colorFromSetting(config_setting_lookup(theme, "highlightColor"), &highlight)) highlight = themeDefault->highlightColor; + if (!colorFromSetting(config_setting_lookup(theme, "highlightGradientEdgeColor"), &highlightGradientEdgeColor)) + highlightGradientEdgeColor = themeDefault->highlightGradientEdgeColor; if (!colorFromSetting(config_setting_lookup(theme, "separatorColor"), &separator)) separator = themeDefault->separatorColor; if (!colorFromSetting(config_setting_lookup(theme, "borderColor"), &borderColor)) @@ -510,6 +514,7 @@ void themeStartup(ThemePreset preset) { .backWaveColor = backWave, .backgroundColor = background, .highlightColor = highlight, + .highlightGradientEdgeColor = highlightGradientEdgeColor, .separatorColor = separator, .borderColor = borderColor, .borderTextColor = borderTextColor, diff --git a/common/theme.h b/common/theme.h index 510c52b..589d066 100644 --- a/common/theme.h +++ b/common/theme.h @@ -33,6 +33,7 @@ typedef struct color_t backWaveColor; color_t backgroundColor; color_t highlightColor; + color_t highlightGradientEdgeColor; color_t separatorColor; color_t borderColor; color_t borderTextColor;