diff options
Diffstat (limited to 'src/displayapp/screens')
| -rw-r--r-- | src/displayapp/screens/Clock.cpp | 1 | ||||
| -rw-r--r-- | src/displayapp/screens/SystemInfo.cpp | 1 | ||||
| -rw-r--r-- | src/displayapp/screens/WatchFaceCasioStyleG7710.cpp | 31 | ||||
| -rw-r--r-- | src/displayapp/screens/WatchFaceDigital.cpp | 20 | ||||
| -rw-r--r-- | src/displayapp/screens/WatchFaceInfineat.cpp | 20 | ||||
| -rw-r--r-- | src/displayapp/screens/WatchFacePineTimeStyle.cpp | 22 | ||||
| -rw-r--r-- | src/displayapp/screens/WatchFaceTerminal.cpp | 22 |
7 files changed, 38 insertions, 79 deletions
diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp index 73c2ab9b..a03dc68b 100644 --- a/src/displayapp/screens/Clock.cpp +++ b/src/displayapp/screens/Clock.cpp @@ -1,6 +1,5 @@ #include "displayapp/screens/Clock.h" -#include <date/date.h> #include <lvgl/lvgl.h> #include "components/battery/BatteryController.h" #include "components/motion/MotionController.h" diff --git a/src/displayapp/screens/SystemInfo.cpp b/src/displayapp/screens/SystemInfo.cpp index 9e05af51..511ecf50 100644 --- a/src/displayapp/screens/SystemInfo.cpp +++ b/src/displayapp/screens/SystemInfo.cpp @@ -1,4 +1,5 @@ #include <FreeRTOS.h> +#include <algorithm> #include <task.h> #include "displayapp/screens/SystemInfo.h" #include <lvgl/lvgl.h> diff --git a/src/displayapp/screens/WatchFaceCasioStyleG7710.cpp b/src/displayapp/screens/WatchFaceCasioStyleG7710.cpp index d6f66ed0..b030e3b0 100644 --- a/src/displayapp/screens/WatchFaceCasioStyleG7710.cpp +++ b/src/displayapp/screens/WatchFaceCasioStyleG7710.cpp @@ -1,6 +1,5 @@ #include "displayapp/screens/WatchFaceCasioStyleG7710.h" -#include <date/date.h> #include <lvgl/lvgl.h> #include <cstdio> #include "displayapp/screens/BatteryIcon.h" @@ -225,19 +224,14 @@ void WatchFaceCasioStyleG7710::Refresh() { currentDateTime = dateTimeController.CurrentDateTime(); if (currentDateTime.IsUpdated()) { - auto newDateTime = currentDateTime.Get(); + auto hour = dateTimeController.Hours(); + auto minute = dateTimeController.Minutes(); + auto year = dateTimeController.Year(); + auto month = dateTimeController.Month(); + auto dayOfWeek = dateTimeController.DayOfWeek(); + auto day = dateTimeController.Day(); + auto dayOfYear = dateTimeController.DayOfYear(); - auto dp = date::floor<date::days>(newDateTime); - auto time = date::make_time(newDateTime - dp); - auto yearMonthDay = date::year_month_day(dp); - - auto year = static_cast<int>(yearMonthDay.year()); - auto month = static_cast<Pinetime::Controllers::DateTime::Months>(static_cast<unsigned>(yearMonthDay.month())); - auto day = static_cast<unsigned>(yearMonthDay.day()); - auto dayOfWeek = static_cast<Pinetime::Controllers::DateTime::Days>(date::weekday(yearMonthDay).iso_encoding()); - - uint8_t hour = time.hours().count(); - uint8_t minute = time.minutes().count(); auto weekNumberFormat = "%V"; if (displayedHour != hour || displayedMinute != minute) { @@ -278,22 +272,19 @@ void WatchFaceCasioStyleG7710::Refresh() { // first day of week 1; days in the new year before this are in week 0. [ tm_year, tm_wday, tm_yday] } - uint8_t weekNumber; - uint16_t dayOfYearNumber, daysTillEndOfYearNumber; - time_t ttTime = std::chrono::system_clock::to_time_t(std::chrono::time_point_cast<std::chrono::system_clock::duration>(currentDateTime.Get())); tm* tmTime = std::localtime(&ttTime); - dayOfYearNumber = tmTime->tm_yday + 1; // tm_yday day of year [0,365] => yday+1 - daysTillEndOfYearNumber = (yearMonthDay.year().is_leap() ? 366 : 365) - dayOfYearNumber; + int daysInCurrentYear = (year % 4 == 0 && year % 100 != 0) || year % 400 == 0 ? 366 : 365; + uint16_t daysTillEndOfYearNumber = daysInCurrentYear - dayOfYear; char buffer[8]; strftime(buffer, 8, weekNumberFormat, tmTime); - weekNumber = atoi(buffer); + uint8_t weekNumber = atoi(buffer); lv_label_set_text_fmt(label_day_of_week, "%s", dateTimeController.DayOfWeekShortToString()); - lv_label_set_text_fmt(label_day_of_year, "%3d-%3d", dayOfYearNumber, daysTillEndOfYearNumber); + lv_label_set_text_fmt(label_day_of_year, "%3d-%3d", dayOfYear, daysTillEndOfYearNumber); lv_label_set_text_fmt(label_week_number, "WK%02d", weekNumber); lv_obj_realign(label_day_of_week); diff --git a/src/displayapp/screens/WatchFaceDigital.cpp b/src/displayapp/screens/WatchFaceDigital.cpp index d33f4b28..ad35b5c9 100644 --- a/src/displayapp/screens/WatchFaceDigital.cpp +++ b/src/displayapp/screens/WatchFaceDigital.cpp @@ -1,6 +1,5 @@ #include "displayapp/screens/WatchFaceDigital.h" -#include <date/date.h> #include <lvgl/lvgl.h> #include <cstdio> #include "displayapp/screens/NotificationIcon.h" @@ -89,19 +88,12 @@ void WatchFaceDigital::Refresh() { currentDateTime = dateTimeController.CurrentDateTime(); if (currentDateTime.IsUpdated()) { - auto newDateTime = currentDateTime.Get(); - - auto dp = date::floor<date::days>(newDateTime); - auto time = date::make_time(newDateTime - dp); - auto yearMonthDay = date::year_month_day(dp); - - auto year = static_cast<int>(yearMonthDay.year()); - auto month = static_cast<Pinetime::Controllers::DateTime::Months>(static_cast<unsigned>(yearMonthDay.month())); - auto day = static_cast<unsigned>(yearMonthDay.day()); - auto dayOfWeek = static_cast<Pinetime::Controllers::DateTime::Days>(date::weekday(yearMonthDay).iso_encoding()); - - uint8_t hour = time.hours().count(); - uint8_t minute = time.minutes().count(); + auto hour = dateTimeController.Hours(); + auto minute = dateTimeController.Minutes(); + auto year = dateTimeController.Year(); + auto month = dateTimeController.Month(); + auto dayOfWeek = dateTimeController.DayOfWeek(); + auto day = dateTimeController.Day(); if (displayedHour != hour || displayedMinute != minute) { displayedHour = hour; diff --git a/src/displayapp/screens/WatchFaceInfineat.cpp b/src/displayapp/screens/WatchFaceInfineat.cpp index 6bd16430..6e854654 100644 --- a/src/displayapp/screens/WatchFaceInfineat.cpp +++ b/src/displayapp/screens/WatchFaceInfineat.cpp @@ -1,6 +1,5 @@ #include "displayapp/screens/WatchFaceInfineat.h" -#include <date/date.h> #include <lvgl/lvgl.h> #include <cstdio> #include "displayapp/screens/Symbols.h" @@ -314,19 +313,12 @@ void WatchFaceInfineat::Refresh() { currentDateTime = dateTimeController.CurrentDateTime(); if (currentDateTime.IsUpdated()) { - auto newDateTime = currentDateTime.Get(); - - auto dp = date::floor<date::days>(newDateTime); - auto time = date::make_time(newDateTime - dp); - auto yearMonthDay = date::year_month_day(dp); - - auto year = static_cast<int>(yearMonthDay.year()); - auto month = static_cast<Pinetime::Controllers::DateTime::Months>(static_cast<unsigned>(yearMonthDay.month())); - auto day = static_cast<unsigned>(yearMonthDay.day()); - auto dayOfWeek = static_cast<Pinetime::Controllers::DateTime::Days>(date::weekday(yearMonthDay).iso_encoding()); - - int hour = time.hours().count(); - auto minute = time.minutes().count(); + auto hour = dateTimeController.Hours(); + auto minute = dateTimeController.Minutes(); + auto year = dateTimeController.Year(); + auto month = dateTimeController.Month(); + auto dayOfWeek = dateTimeController.DayOfWeek(); + auto day = dateTimeController.Day(); char minutesChar[3]; sprintf(minutesChar, "%02d", static_cast<int>(minute)); diff --git a/src/displayapp/screens/WatchFacePineTimeStyle.cpp b/src/displayapp/screens/WatchFacePineTimeStyle.cpp index fc5d1462..19841c15 100644 --- a/src/displayapp/screens/WatchFacePineTimeStyle.cpp +++ b/src/displayapp/screens/WatchFacePineTimeStyle.cpp @@ -20,7 +20,6 @@ */ #include "displayapp/screens/WatchFacePineTimeStyle.h" -#include <date/date.h> #include <lvgl/lvgl.h> #include <cstdio> #include <displayapp/Colors.h> @@ -448,20 +447,13 @@ void WatchFacePineTimeStyle::Refresh() { currentDateTime = dateTimeController.CurrentDateTime(); if (currentDateTime.IsUpdated()) { - auto newDateTime = currentDateTime.Get(); - - auto dp = date::floor<date::days>(newDateTime); - auto time = date::make_time(newDateTime - dp); - auto yearMonthDay = date::year_month_day(dp); - - auto year = static_cast<int>(yearMonthDay.year()); - auto month = static_cast<Pinetime::Controllers::DateTime::Months>(static_cast<unsigned>(yearMonthDay.month())); - auto day = static_cast<unsigned>(yearMonthDay.day()); - auto dayOfWeek = static_cast<Pinetime::Controllers::DateTime::Days>(date::weekday(yearMonthDay).iso_encoding()); - - uint8_t hour = time.hours().count(); - uint8_t minute = time.minutes().count(); - uint8_t second = time.seconds().count(); + auto hour = dateTimeController.Hours(); + auto minute = dateTimeController.Minutes(); + auto second = dateTimeController.Seconds(); + auto year = dateTimeController.Year(); + auto month = dateTimeController.Month(); + auto dayOfWeek = dateTimeController.DayOfWeek(); + auto day = dateTimeController.Day(); if (displayedHour != hour || displayedMinute != minute) { displayedHour = hour; diff --git a/src/displayapp/screens/WatchFaceTerminal.cpp b/src/displayapp/screens/WatchFaceTerminal.cpp index d3534c08..e5ff195e 100644 --- a/src/displayapp/screens/WatchFaceTerminal.cpp +++ b/src/displayapp/screens/WatchFaceTerminal.cpp @@ -1,4 +1,3 @@ -#include <date/date.h> #include <lvgl/lvgl.h> #include "displayapp/screens/WatchFaceTerminal.h" #include "displayapp/screens/BatteryIcon.h" @@ -108,20 +107,13 @@ void WatchFaceTerminal::Refresh() { currentDateTime = dateTimeController.CurrentDateTime(); if (currentDateTime.IsUpdated()) { - auto newDateTime = currentDateTime.Get(); - - auto dp = date::floor<date::days>(newDateTime); - auto time = date::make_time(newDateTime - dp); - auto yearMonthDay = date::year_month_day(dp); - - auto year = static_cast<int>(yearMonthDay.year()); - auto month = static_cast<Pinetime::Controllers::DateTime::Months>(static_cast<unsigned>(yearMonthDay.month())); - auto day = static_cast<unsigned>(yearMonthDay.day()); - auto dayOfWeek = static_cast<Pinetime::Controllers::DateTime::Days>(date::weekday(yearMonthDay).iso_encoding()); - - uint8_t hour = time.hours().count(); - uint8_t minute = time.minutes().count(); - uint8_t second = time.seconds().count(); + auto hour = dateTimeController.Hours(); + auto minute = dateTimeController.Minutes(); + auto second = dateTimeController.Seconds(); + auto year = dateTimeController.Year(); + auto month = dateTimeController.Month(); + auto dayOfWeek = dateTimeController.DayOfWeek(); + auto day = dateTimeController.Day(); if (displayedHour != hour || displayedMinute != minute || displayedSecond != second) { displayedHour = hour; |
