|
|
@ -23,25 +23,52 @@ |
|
|
|
#pragma once |
|
|
|
|
|
|
|
namespace Theme { |
|
|
|
#ifdef LULZBOT_USE_BIOPRINTER_UI |
|
|
|
// The Lulzbot Bio uses the color PANTONE 2175C on the case silkscreen.
|
|
|
|
// This translates to HSL(208°, 100%, 39%) as an accent color on the GUI.
|
|
|
|
|
|
|
|
#define COLOR_CORRECTION(rgb) ( \ |
|
|
|
(uint32_t((((rgb) & 0xFF0000) >> 16) * 1.00) << 16) | \ |
|
|
|
(uint32_t((((rgb) & 0x00FF00) >> 8) * 1.00) << 8) | \ |
|
|
|
(uint32_t((((rgb) & 0x0000FF) >> 0) * .75) << 0)) |
|
|
|
constexpr int accent_hue = 208; |
|
|
|
constexpr float accent_sat = 0.5; |
|
|
|
|
|
|
|
#define COLOR_BLEND(a,b,f) COLOR_CORRECTION( \ |
|
|
|
(uint32_t((((a) & 0xFF0000) >> 16) * f + (((b) & 0xFF0000) >> 16) * (1-f)) << 16) | \ |
|
|
|
(uint32_t((((a) & 0x00FF00) >> 8) * f + (((b) & 0x00FF00) >> 8) * (1-f)) << 8) | \ |
|
|
|
(uint32_t((((a) & 0x0000FF) >> 0) * f + (((b) & 0x0000FF) >> 0) * (1-f)) << 0)) |
|
|
|
constexpr uint32_t logo_bg = 0xffffff; |
|
|
|
constexpr uint32_t logo_fg = 0xffffff; |
|
|
|
constexpr uint32_t logo_stroke = hsl_to_rgb(accent_hue, 1.0, 0.39); |
|
|
|
#else |
|
|
|
// The Lulzbot logo uses the color PANTONE 382c.
|
|
|
|
// This translates to HSL(68°, 68%, 52%) as an accent color on the GUI.
|
|
|
|
|
|
|
|
constexpr int accent_hue = 68; |
|
|
|
constexpr float accent_sat = 0.68; |
|
|
|
|
|
|
|
constexpr uint32_t logo_bg = hsl_to_rgb(accent_hue, 0.77, 0.64); |
|
|
|
constexpr uint32_t logo_fg = hsl_to_rgb(accent_hue, 0.68, 0.52); // Lulzbot Green
|
|
|
|
constexpr uint32_t logo_stroke = 0x000000; |
|
|
|
#endif |
|
|
|
|
|
|
|
// Shades of accent color
|
|
|
|
|
|
|
|
constexpr uint32_t lulzbot_bg = 0xDEEA5C; |
|
|
|
constexpr uint32_t lulzbot_fg = 0xC1D82F; |
|
|
|
constexpr uint32_t accent_color_1 = hsl_to_rgb(accent_hue, accent_sat, 0.26); // Darkest
|
|
|
|
constexpr uint32_t accent_color_2 = hsl_to_rgb(accent_hue, accent_sat, 0.39); |
|
|
|
constexpr uint32_t accent_color_3 = hsl_to_rgb(accent_hue, accent_sat, 0.52); |
|
|
|
constexpr uint32_t accent_color_4 = hsl_to_rgb(accent_hue, accent_sat, 0.65); |
|
|
|
constexpr uint32_t accent_color_5 = hsl_to_rgb(accent_hue, accent_sat, 0.78); |
|
|
|
constexpr uint32_t accent_color_6 = hsl_to_rgb(accent_hue, accent_sat, 0.91); // Lightest
|
|
|
|
|
|
|
|
constexpr uint32_t lulzbot_green = COLOR_BLEND(0xC1DB2F,0x788814,0.33); |
|
|
|
// Shades of gray
|
|
|
|
|
|
|
|
constexpr float gray_sat = 0.14; |
|
|
|
|
|
|
|
constexpr uint32_t gray_color_1 = hsl_to_rgb(accent_hue, gray_sat, 0.26); // Darkest
|
|
|
|
constexpr uint32_t gray_color_2 = hsl_to_rgb(accent_hue, gray_sat, 0.39); |
|
|
|
constexpr uint32_t gray_color_3 = hsl_to_rgb(accent_hue, gray_sat, 0.52); |
|
|
|
constexpr uint32_t gray_color_4 = hsl_to_rgb(accent_hue, gray_sat, 0.65); |
|
|
|
constexpr uint32_t gray_color_5 = hsl_to_rgb(accent_hue, gray_sat, 0.78); |
|
|
|
constexpr uint32_t gray_color_6 = hsl_to_rgb(accent_hue, gray_sat, 0.91); // Lightest
|
|
|
|
|
|
|
|
#ifndef LULZBOT_USE_BIOPRINTER_UI |
|
|
|
constexpr uint32_t theme_darkest = COLOR_CORRECTION(0x444444); |
|
|
|
constexpr uint32_t theme_dark = COLOR_CORRECTION(0x777777); |
|
|
|
// Lulzbot TAZ Pro
|
|
|
|
constexpr uint32_t theme_darkest = gray_color_1; |
|
|
|
constexpr uint32_t theme_dark = gray_color_2; |
|
|
|
|
|
|
|
constexpr uint32_t bg_color = theme_darkest; |
|
|
|
constexpr uint32_t bg_text_disabled = theme_dark; |
|
|
@ -49,64 +76,59 @@ namespace Theme { |
|
|
|
constexpr uint32_t bg_normal = theme_darkest; |
|
|
|
|
|
|
|
constexpr uint32_t fg_normal = theme_dark; |
|
|
|
constexpr uint32_t fg_action = lulzbot_green; |
|
|
|
constexpr uint32_t fg_disabled = bg_color; |
|
|
|
constexpr uint32_t fg_action = accent_color_2; |
|
|
|
constexpr uint32_t fg_disabled = theme_darkest; |
|
|
|
#else |
|
|
|
constexpr uint32_t theme_darkest = 0x545923; |
|
|
|
constexpr uint32_t theme_dark = lulzbot_bg; |
|
|
|
// Lulzbot Bio
|
|
|
|
constexpr uint32_t theme_darkest = accent_color_1; |
|
|
|
constexpr uint32_t theme_dark = accent_color_4; |
|
|
|
|
|
|
|
constexpr uint32_t bg_color = 0xFFFFFF; |
|
|
|
constexpr uint32_t bg_text_disabled = 0x333333; |
|
|
|
constexpr uint32_t bg_text_enabled = theme_darkest; |
|
|
|
constexpr uint32_t bg_normal = theme_dark; |
|
|
|
|
|
|
|
constexpr uint32_t fg_normal = theme_darkest; |
|
|
|
constexpr uint32_t fg_action = theme_dark; |
|
|
|
constexpr uint32_t fg_disabled = 0xEFEFEF; |
|
|
|
|
|
|
|
constexpr uint32_t shadow_rgb = 0xE0E0E0; |
|
|
|
constexpr uint32_t fill_rgb = lulzbot_fg; |
|
|
|
constexpr uint32_t stroke_rgb = theme_darkest; |
|
|
|
constexpr uint32_t syringe_rgb = 0xF1F6C0; |
|
|
|
constexpr uint32_t bg_text_disabled = gray_color_1; |
|
|
|
constexpr uint32_t bg_text_enabled = accent_color_1; |
|
|
|
constexpr uint32_t bg_normal = accent_color_4; |
|
|
|
|
|
|
|
constexpr uint32_t fg_normal = accent_color_1; |
|
|
|
constexpr uint32_t fg_action = accent_color_4; |
|
|
|
constexpr uint32_t fg_disabled = gray_color_6; |
|
|
|
|
|
|
|
constexpr uint32_t shadow_rgb = gray_color_6; |
|
|
|
constexpr uint32_t stroke_rgb = accent_color_1; |
|
|
|
constexpr uint32_t fill_rgb = accent_color_3; |
|
|
|
constexpr uint32_t syringe_rgb = accent_color_5; |
|
|
|
#endif |
|
|
|
|
|
|
|
constexpr uint32_t x_axis = COLOR_CORRECTION(0xFF0000); |
|
|
|
constexpr uint32_t y_axis = COLOR_CORRECTION(0x00BB00); |
|
|
|
constexpr uint32_t z_axis = COLOR_CORRECTION(0x0000FF); |
|
|
|
#ifndef LULZBOT_USE_BIOPRINTER_UI |
|
|
|
constexpr uint32_t e_axis = COLOR_CORRECTION(0x777777); |
|
|
|
constexpr uint32_t feedrate = COLOR_CORRECTION(0x777777); |
|
|
|
constexpr uint32_t other = COLOR_CORRECTION(0x777777); |
|
|
|
#else |
|
|
|
constexpr uint32_t e_axis = 0x000000; |
|
|
|
constexpr uint32_t feedrate = 0x000000; |
|
|
|
constexpr uint32_t other = 0x000000; |
|
|
|
#endif |
|
|
|
constexpr uint32_t x_axis = 0xFF0000; |
|
|
|
constexpr uint32_t y_axis = 0x00BB00; |
|
|
|
constexpr uint32_t z_axis = 0x0000BF; |
|
|
|
constexpr uint32_t e_axis = gray_color_2; |
|
|
|
constexpr uint32_t feedrate = gray_color_2; |
|
|
|
constexpr uint32_t other = gray_color_2; |
|
|
|
|
|
|
|
// Status screen
|
|
|
|
constexpr uint32_t progress = theme_dark; |
|
|
|
constexpr uint32_t status_msg = theme_dark; |
|
|
|
constexpr uint32_t fan_speed = COLOR_CORRECTION(0x3771CB); |
|
|
|
constexpr uint32_t temp = COLOR_CORRECTION(0x892ca0); |
|
|
|
constexpr uint32_t axis_label = theme_dark; |
|
|
|
constexpr uint32_t progress = gray_color_2; |
|
|
|
constexpr uint32_t status_msg = gray_color_2; |
|
|
|
constexpr uint32_t fan_speed = 0x377198; |
|
|
|
constexpr uint32_t temp = 0x892c78; |
|
|
|
constexpr uint32_t axis_label = gray_color_2; |
|
|
|
|
|
|
|
constexpr uint32_t disabled_icon = 0x101010; |
|
|
|
constexpr uint32_t disabled_icon = gray_color_1; |
|
|
|
|
|
|
|
// Calibration Registers Screen
|
|
|
|
constexpr uint32_t transformA = 0x3010D0; |
|
|
|
constexpr uint32_t transformB = 0x4010D0; |
|
|
|
constexpr uint32_t transformC = 0x5010D0; |
|
|
|
constexpr uint32_t transformD = 0x6010D0; |
|
|
|
constexpr uint32_t transformE = 0x7010D0; |
|
|
|
constexpr uint32_t transformF = 0x8010D0; |
|
|
|
constexpr uint32_t transformVal = 0x104010; |
|
|
|
|
|
|
|
constexpr btn_colors disabled_btn = {.bg = bg_color, .grad = fg_disabled, .fg = fg_disabled, .rgb = fg_disabled }; |
|
|
|
constexpr btn_colors normal_btn = {.bg = fg_action, .grad = 0xFFFFFF, .fg = fg_normal, .rgb = 0xFFFFFF }; |
|
|
|
constexpr btn_colors action_btn = {.bg = bg_color, .grad = 0xFFFFFF, .fg = fg_action, .rgb = 0xFFFFFF }; |
|
|
|
constexpr btn_colors red_btn = {.bg = 0xFF5555, .grad = 0xFFFFFF, .fg = 0xFF0000, .rgb = 0xFFFFFF }; |
|
|
|
constexpr btn_colors ui_slider = {.bg = theme_darkest, .grad = 0xFFFFFF, .fg = theme_dark, .rgb = lulzbot_green }; |
|
|
|
constexpr btn_colors ui_toggle = {.bg = theme_darkest, .grad = 0xFFFFFF, .fg = theme_dark, .rgb = 0xFFFFFF }; |
|
|
|
constexpr uint32_t transformA = 0x3010D0; |
|
|
|
constexpr uint32_t transformB = 0x4010D0; |
|
|
|
constexpr uint32_t transformC = 0x5010D0; |
|
|
|
constexpr uint32_t transformD = 0x6010D0; |
|
|
|
constexpr uint32_t transformE = 0x7010D0; |
|
|
|
constexpr uint32_t transformF = 0x8010D0; |
|
|
|
constexpr uint32_t transformVal = 0x104010; |
|
|
|
|
|
|
|
constexpr btn_colors disabled_btn = {.bg = bg_color, .grad = fg_disabled, .fg = fg_disabled, .rgb = fg_disabled }; |
|
|
|
constexpr btn_colors normal_btn = {.bg = fg_action, .grad = 0xFFFFFF, .fg = fg_normal, .rgb = 0xFFFFFF }; |
|
|
|
constexpr btn_colors action_btn = {.bg = bg_color, .grad = 0xFFFFFF, .fg = fg_action, .rgb = 0xFFFFFF }; |
|
|
|
constexpr btn_colors red_btn = {.bg = 0xFF5555, .grad = 0xFFFFFF, .fg = 0xFF0000, .rgb = 0xFFFFFF }; |
|
|
|
constexpr btn_colors ui_slider = {.bg = theme_darkest, .grad = 0xFFFFFF, .fg = theme_dark, .rgb = accent_color_3 }; |
|
|
|
constexpr btn_colors ui_toggle = {.bg = theme_darkest, .grad = 0xFFFFFF, .fg = theme_dark, .rgb = 0xFFFFFF }; |
|
|
|
|
|
|
|
// Temperature color scale
|
|
|
|
|
|
|
|