Make bar fill color configurable

This commit is contained in:
2026-06-28 12:21:59 -04:00
parent 601688d89d
commit ba617d7927
5 changed files with 35 additions and 16 deletions
+10 -5
View File
@@ -117,7 +117,7 @@ static void batt_callback(BatteryChargeState state) {
}
static void temp_update_proc(Layer *layer, GContext *ctx) {
graphics_context_set_fill_color(ctx, GColorWhite);
graphics_context_set_fill_color(ctx, settings.ColorBarsFill);
const uint8_t bar_count = s_temp_level;
uint16_t bar_bottom_pos = 195;
@@ -128,7 +128,7 @@ static void temp_update_proc(Layer *layer, GContext *ctx) {
}
static void fuel_update_proc(Layer *layer, GContext *ctx) {
graphics_context_set_fill_color(ctx, GColorWhite);
graphics_context_set_fill_color(ctx, settings.ColorBarsFill);
uint16_t bar_bottom_pos = 195;
for (uint8_t i = 0; i < s_batt_level; ++i) {
@@ -139,7 +139,7 @@ static void fuel_update_proc(Layer *layer, GContext *ctx) {
static void temp_fuel_mg_update_proc_helper(Layer *layer, GContext *ctx, bool isFuel) {
GRect bounds = layer_get_bounds(layer);
graphics_context_set_fill_color(ctx, settings.ColorMGBars);
graphics_context_set_fill_color(ctx, settings.ColorBarsMG);
graphics_fill_rect(ctx, bounds, 0, GCornerNone);
if (isFuel) {
graphics_context_set_stroke_color(ctx, settings.ColorBarsHot);
@@ -598,6 +598,7 @@ static void inbox_received_handler(DictionaryIterator *iter, void *context) {
Tuple *color_led_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_LED);
Tuple *color_bg_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_BG);
Tuple *color_bar_mg_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_BAR_MG);
Tuple *color_bar_fill_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_BAR_FILL);
Tuple *color_bar_cool_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_BAR_COOL);
Tuple *color_bar_hot_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_BAR_HOT);
Tuple *color_time_mg_tuple = dict_find(iter, MESSAGE_KEY_CLAY_COLOR_TIME_MG);
@@ -630,7 +631,10 @@ static void inbox_received_handler(DictionaryIterator *iter, void *context) {
settings.ColorBG = GColorFromHEX(color_bg_tuple->value->int32);
}
if (color_bar_mg_tuple) {
settings.ColorMGBars = GColorFromHEX(color_bar_mg_tuple->value->int32);
settings.ColorBarsMG = GColorFromHEX(color_bar_mg_tuple->value->int32);
}
if (color_bar_fill_tuple) {
settings.ColorBarsFill = GColorFromHEX(color_bar_fill_tuple->value->int32);
}
if (color_bar_cool_tuple) {
settings.ColorBarsCool = GColorFromHEX(color_bar_cool_tuple->value->int32);
@@ -670,7 +674,8 @@ static void init() {
settings.LowFuelPercent = 20;
settings.ColorLED = GColorWhite;
settings.ColorBG = GColorBlue;
settings.ColorMGBars = GColorDarkGray;
settings.ColorBarsMG = GColorDarkGray;
settings.ColorBarsFill = GColorWhite;
settings.ColorBarsCool = GColorDukeBlue;
settings.ColorBarsHot = GColorRed;
settings.ColorMGTime = GColorDarkGray;