From d86f81b9ad68dd6baab434f6adcbf0e728caf3c6 Mon Sep 17 00:00:00 2001 From: Eli Weiss Date: Tue, 11 Jan 2022 10:24:17 -0500 Subject: [PATCH] Changed setHourLabels function to handle 24H too Changed setHourLabels function to handle 24 hour time labeling, changed to private --- .../screens/settings/SettingSetTime.cpp | 39 ++----------------- .../screens/settings/SettingSetTime.h | 25 ++++++++++++ 2 files changed, 28 insertions(+), 36 deletions(-) diff --git a/src/displayapp/screens/settings/SettingSetTime.cpp b/src/displayapp/screens/settings/SettingSetTime.cpp index 7540a4db..b6d64dd3 100644 --- a/src/displayapp/screens/settings/SettingSetTime.cpp +++ b/src/displayapp/screens/settings/SettingSetTime.cpp @@ -23,8 +23,6 @@ namespace { } } -void set12HourLabels(int time24H, lv_obj_t* lblampm, lv_obj_t* lblHours); - SettingSetTime::SettingSetTime(Pinetime::Applications::DisplayApp* app, Pinetime::Controllers::DateTime& dateTimeController, Pinetime::Controllers::Settings& settingsController) @@ -116,36 +114,13 @@ SettingSetTime::SettingSetTime(Pinetime::Applications::DisplayApp* app, lv_obj_set_style_local_value_str(btnSetTime, LV_BTN_PART_MAIN, LV_STATE_DEFAULT, "Set"); lv_obj_set_event_cb(btnSetTime, event_handler); - if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) { - set12HourLabels(hoursValue, lblampm, lblHours); - } + setHourLabels(hoursValue); } SettingSetTime::~SettingSetTime() { lv_obj_clean(lv_scr_act()); } -void set12HourLabels(int time24H, lv_obj_t* lblampm, lv_obj_t* lblHours) { - switch (time24H) { - case 0: - lv_label_set_text_fmt(lblHours, "%02d", 12); - lv_label_set_text_static(lblampm, "AM"); - break; - case 1 ... 11: - lv_label_set_text_fmt(lblHours, "%02d", time24H); - lv_label_set_text_static(lblampm, "AM"); - break; - case 12: - lv_label_set_text_fmt(lblHours, "%02d", 12); - lv_label_set_text_static(lblampm, "PM"); - break; - case 13 ... 23: - lv_label_set_text_fmt(lblHours, "%02d", time24H - 12); - lv_label_set_text_static(lblampm, "PM"); - break; - } -} - void SettingSetTime::HandleButtonPress(lv_obj_t* object, lv_event_t event) { if (event != LV_EVENT_CLICKED) return; @@ -155,22 +130,14 @@ void SettingSetTime::HandleButtonPress(lv_obj_t* object, lv_event_t event) { if (hoursValue > 23) { hoursValue = 0; } - if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) { - set12HourLabels(hoursValue, lblampm, lblHours); - } else { - lv_label_set_text_fmt(lblHours, "%02d", hoursValue); - } + setHourLabels(hoursValue); lv_btn_set_state(btnSetTime, LV_BTN_STATE_RELEASED); } else if (object == btnHoursMinus) { hoursValue--; if (hoursValue < 0) { hoursValue = 23; } - if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) { - set12HourLabels(hoursValue, lblampm, lblHours); - } else { - lv_label_set_text_fmt(lblHours, "%02d", hoursValue); - } + setHourLabels(hoursValue); lv_btn_set_state(btnSetTime, LV_BTN_STATE_RELEASED); } else if (object == btnMinutesPlus) { minutesValue++; diff --git a/src/displayapp/screens/settings/SettingSetTime.h b/src/displayapp/screens/settings/SettingSetTime.h index eb0423f2..cc4e4692 100644 --- a/src/displayapp/screens/settings/SettingSetTime.h +++ b/src/displayapp/screens/settings/SettingSetTime.h @@ -32,6 +32,31 @@ namespace Pinetime { lv_obj_t* btnMinutesPlus; lv_obj_t* btnMinutesMinus; lv_obj_t* btnSetTime; + + void setHourLabels(int time24H) { + switch (time24H) { + if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) { + case 0: + lv_label_set_text_static(lblHours, "12"); + lv_label_set_text_static(lblampm, "AM"); + break; + case 1 ... 11: + lv_label_set_text_fmt(lblHours, "%02d", time24H); + lv_label_set_text_static(lblampm, "AM"); + break; + case 12: + lv_label_set_text_static(lblHours, "12"); + lv_label_set_text_static(lblampm, "PM"); + break; + case 13 ... 23: + lv_label_set_text_fmt(lblHours, "%02d", time24H - 12); + lv_label_set_text_static(lblampm, "PM"); + break; + } else { + lv_label_set_text_fmt(lblHours, "%02d", hoursValue); + } + } + } }; } }