Revert "Add Setting to display UTC. Change Clockfaces to actually do it"

This reverts commit ed346fc465.
This commit is contained in:
uli 2022-06-02 12:30:19 +02:00
parent 4f6e5aed8c
commit 58b358ef95
7 changed files with 53 additions and 92 deletions

View File

@ -8,7 +8,7 @@ namespace Pinetime {
namespace Controllers {
class Settings {
public:
enum class ClockType : uint8_t { H24, H12, UTC };
enum class ClockType : uint8_t { H24, H12 };
enum class Notification : uint8_t { ON, OFF };
enum class ChimesOption : uint8_t { None, Hours, HalfHours };
enum class WakeUpMode : uint8_t {

View File

@ -1,6 +1,5 @@
#include "displayapp/screens/WatchFaceAnalog.h"
#include <cmath>
#include <date/date.h>
#include <lvgl/lvgl.h>
#include "displayapp/screens/BatteryIcon.h"
#include "displayapp/screens/BleIcon.h"
@ -13,33 +12,35 @@ LV_IMG_DECLARE(bg_clock);
using namespace Pinetime::Applications::Screens;
namespace {
constexpr int16_t HourLength = 70;
constexpr int16_t MinuteLength = 90;
constexpr int16_t SecondLength = 110;
constexpr int16_t HourLength = 70;
constexpr int16_t MinuteLength = 90;
constexpr int16_t SecondLength = 110;
// sin(90) = 1 so the value of _lv_trigo_sin(90) is the scaling factor
const auto LV_TRIG_SCALE = _lv_trigo_sin(90);
// sin(90) = 1 so the value of _lv_trigo_sin(90) is the scaling factor
const auto LV_TRIG_SCALE = _lv_trigo_sin(90);
int16_t Cosine(int16_t angle) {
return _lv_trigo_sin(angle + 90);
}
int16_t Cosine(int16_t angle) {
return _lv_trigo_sin(angle + 90);
}
int16_t Sine(int16_t angle) {
return _lv_trigo_sin(angle);
}
int16_t Sine(int16_t angle) {
return _lv_trigo_sin(angle);
}
int16_t CoordinateXRelocate(int16_t x) {
return (x + LV_HOR_RES / 2);
}
int16_t CoordinateXRelocate(int16_t x) {
return (x + LV_HOR_RES / 2);
}
int16_t CoordinateYRelocate(int16_t y) {
return std::abs(y - LV_HOR_RES / 2);
}
int16_t CoordinateYRelocate(int16_t y) {
return std::abs(y - LV_HOR_RES / 2);
}
lv_point_t CoordinateRelocate(int16_t radius, int16_t angle) {
return lv_point_t {.x = CoordinateXRelocate(radius * static_cast<int32_t>(Sine(angle)) / LV_TRIG_SCALE),
.y = CoordinateYRelocate(radius * static_cast<int32_t>(Cosine(angle)) / LV_TRIG_SCALE)};
}
lv_point_t CoordinateRelocate(int16_t radius, int16_t angle) {
return lv_point_t{
.x = CoordinateXRelocate(radius * static_cast<int32_t>(Sine(angle)) / LV_TRIG_SCALE),
.y = CoordinateYRelocate(radius * static_cast<int32_t>(Cosine(angle)) / LV_TRIG_SCALE)
};
}
}
@ -144,15 +145,6 @@ void WatchFaceAnalog::UpdateClock() {
uint8_t minute = dateTimeController.Minutes();
uint8_t second = dateTimeController.Seconds();
if (settingsController.GetClockType() == Controllers::Settings::ClockType::UTC) {
auto utcDateTime = dateTimeController.UTCDateTime();
auto dp = date::floor<date::days>(utcDateTime);
auto time = date::make_time(utcDateTime - dp);
hour = time.hours().count();
minute = time.minutes().count();
second = time.seconds().count();
}
if (sMinute != minute) {
auto const angle = minute * 6;
minute_point[0] = CoordinateRelocate(30, angle);

View File

@ -120,10 +120,6 @@ void WatchFaceDigital::Refresh() {
currentDateTime = dateTimeController.CurrentDateTime();
if (settingsController.GetClockType() == Controllers::Settings::ClockType::UTC) {
currentDateTime = dateTimeController.UTCDateTime();
}
if (currentDateTime.IsUpdated()) {
auto newDateTime = currentDateTime.Get();
@ -163,18 +159,12 @@ void WatchFaceDigital::Refresh() {
}
if ((year != currentYear) || (month != currentMonth) || (dayOfWeek != currentDayOfWeek) || (day != currentDay)) {
switch (settingsController.GetClockType()) {
default:
case Controllers::Settings::ClockType::H24:
lv_label_set_text_fmt(
label_date, "%s %d %s %d", dateTimeController.DayOfWeekShortToString(), day, dateTimeController.MonthShortToString(), year);
break;
case Controllers::Settings::ClockType::H12:
lv_label_set_text_fmt(
label_date, "%s %s %d %d", dateTimeController.DayOfWeekShortToString(), dateTimeController.MonthShortToString(), day, year);
case Controllers::Settings::ClockType::UTC:
lv_label_set_text_fmt(label_date, "%d-%d-%d", year, static_cast<uint8_t>(month), day);
break;
if (settingsController.GetClockType() == Controllers::Settings::ClockType::H24) {
lv_label_set_text_fmt(
label_date, "%s %d %s %d", dateTimeController.DayOfWeekShortToString(), day, dateTimeController.MonthShortToString(), year);
} else {
lv_label_set_text_fmt(
label_date, "%s %s %d %d", dateTimeController.DayOfWeekShortToString(), dateTimeController.MonthShortToString(), day, year);
}
lv_obj_realign(label_date);

View File

@ -383,11 +383,6 @@ void WatchFacePineTimeStyle::Refresh() {
}
currentDateTime = dateTimeController.CurrentDateTime();
if (settingsController.GetClockType() == Controllers::Settings::ClockType::UTC) {
currentDateTime = dateTimeController.UTCDateTime();
}
if (currentDateTime.IsUpdated()) {
auto newDateTime = currentDateTime.Get();

View File

@ -89,7 +89,7 @@ void WatchFaceTerminal::Refresh() {
bleState = bleController.IsConnected();
bleRadioEnabled = bleController.IsRadioEnabled();
if (bleState.IsUpdated() || bleRadioEnabled.IsUpdated()) {
if (!bleRadioEnabled.Get()) {
if(!bleRadioEnabled.Get()) {
lv_label_set_text_static(connectState, "[STAT]#0082fc Disabled#");
} else {
if (bleState.Get()) {
@ -111,10 +111,6 @@ void WatchFaceTerminal::Refresh() {
currentDateTime = dateTimeController.CurrentDateTime();
if (settingsController.GetClockType() == Controllers::Settings::ClockType::UTC) {
currentDateTime = dateTimeController.UTCDateTime();
}
if (currentDateTime.IsUpdated()) {
auto newDateTime = currentDateTime.Get();
@ -136,29 +132,24 @@ void WatchFaceTerminal::Refresh() {
displayedMinute = minute;
displayedSecond = second;
switch (settingsController.GetClockType()) {
case Controllers::Settings::ClockType::H12: {
char ampmChar[3] = "AM";
if (hour == 0) {
hour = 12;
} else if (hour == 12) {
ampmChar[0] = 'P';
} else if (hour > 12) {
hour = hour - 12;
ampmChar[0] = 'P';
}
lv_label_set_text_fmt(label_time, "[TIME]#11cc55 %02d:%02d:%02d %s#", hour, minute, second, ampmChar);
} break;
case Controllers::Settings::ClockType::H24:
lv_label_set_text_fmt(label_time, "[TIME]#11cc55 %02d:%02d:%02d", hour, minute, second);
break;
case Controllers::Settings::ClockType::UTC:
lv_label_set_text_fmt(label_time, "[TIME]#11cc55 %02d:%02d:%02dZ", hour, minute, second);
if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) {
char ampmChar[3] = "AM";
if (hour == 0) {
hour = 12;
} else if (hour == 12) {
ampmChar[0] = 'P';
} else if (hour > 12) {
hour = hour - 12;
ampmChar[0] = 'P';
}
lv_label_set_text_fmt(label_time, "[TIME]#11cc55 %02d:%02d:%02d %s#", hour, minute, second, ampmChar);
} else {
lv_label_set_text_fmt(label_time, "[TIME]#11cc55 %02d:%02d:%02d", hour, minute, second);
}
}
if ((year != currentYear) || (month != currentMonth) || (dayOfWeek != currentDayOfWeek) || (day != currentDay)) {
lv_label_set_text_fmt(label_date, "[DATE]#007fff %04d-%02d-%02d#", short(year), char(month), char(day));
lv_label_set_text_fmt(label_date, "[DATE]#007fff %04d.%02d.%02d#", short(year), char(month), char(day));
currentYear = year;
currentMonth = month;

View File

@ -14,7 +14,7 @@ namespace {
}
}
constexpr std::array<const char*, 3> SettingTimeFormat::options;
constexpr std::array<const char*, 2> SettingTimeFormat::options;
SettingTimeFormat::SettingTimeFormat(Pinetime::Applications::DisplayApp* app, Pinetime::Controllers::Settings& settingsController)
: Screen(app), settingsController {settingsController} {
@ -54,8 +54,6 @@ SettingTimeFormat::SettingTimeFormat(Pinetime::Applications::DisplayApp* app, Pi
lv_checkbox_set_checked(cbOption[0], true);
} else if (settingsController.GetClockType() == Controllers::Settings::ClockType::H24) {
lv_checkbox_set_checked(cbOption[1], true);
} else if (settingsController.GetClockType() == Controllers::Settings::ClockType::UTC) {
lv_checkbox_set_checked(cbOption[2], true);
}
}
@ -70,17 +68,12 @@ void SettingTimeFormat::UpdateSelected(lv_obj_t* object, lv_event_t event) {
if (object == cbOption[i]) {
lv_checkbox_set_checked(cbOption[i], true);
switch (i) {
case 0:
settingsController.SetClockType(Controllers::Settings::ClockType::H12);
break;
case 1:
settingsController.SetClockType(Controllers::Settings::ClockType::H24);
break;
case 2:
settingsController.SetClockType(Controllers::Settings::ClockType::UTC);
break;
}
if (i == 0) {
settingsController.SetClockType(Controllers::Settings::ClockType::H12);
};
if (i == 1) {
settingsController.SetClockType(Controllers::Settings::ClockType::H24);
};
} else {
lv_checkbox_set_checked(cbOption[i], false);

View File

@ -20,7 +20,7 @@ namespace Pinetime {
void UpdateSelected(lv_obj_t* object, lv_event_t event);
private:
static constexpr std::array<const char*, 3> options = {" 12-hour", " 24-hour", " UTC"};
static constexpr std::array<const char*, 2> options = {" 12-hour", " 24-hour"};
Controllers::Settings& settingsController;
lv_obj_t* cbOption[options.size()];
};