Skip to content

Commit

Permalink
Update src/displayapp/screens/WatchFaceTerminal.cpp
Browse files Browse the repository at this point in the history
Co-authored-by: NeroBurner <pyro4hell@gmail.com>
  • Loading branch information
13werwolf13 and NeroBurner committed Feb 2, 2022
1 parent 4d85028 commit 6959d8c
Showing 1 changed file with 15 additions and 55 deletions.
70 changes: 15 additions & 55 deletions src/displayapp/screens/WatchFaceTerminal.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -156,65 +156,25 @@ void WatchFaceTerminal::Refresh() {
uint8_t minute = time.minutes().count();
uint8_t second = time.seconds().count();

char minutesChar[6];
sprintf(minutesChar, "%02d", static_cast<int>(minute));

char hoursChar[8];

char ampmChar[3];
if (settingsController.GetClockType() == Controllers::Settings::ClockType::H24) {
sprintf(hoursChar, "%02d", hour);
} else {
if (hour == 0 && hour != 12) {
hour = 12;
sprintf(ampmChar, "AM");
} else if (hour == 12 && hour != 0) {
hour = 12;
sprintf(ampmChar, "PM");
} else if (hour < 12 && hour != 0) {
sprintf(ampmChar, "AM");
} else if (hour > 12 && hour != 0) {
hour = hour - 12;
sprintf(ampmChar, "PM");
}
sprintf(hoursChar, "%02d", hour);
}

char secondsChar[5];
sprintf(secondsChar, "%02d", static_cast<int>(second));

auto batteryValue = static_cast<uint8_t>(batteryController.PercentRemaining());
char battStr[24];
sprintf(battStr, "[BATT]#387b54 %d%\%#", batteryValue);
lv_label_set_text(batteryPercent, battStr);

if (hoursChar[0] != displayedChar[0] || hoursChar[1] != displayedChar[1] || minutesChar[0] != displayedChar[2] ||
minutesChar[1] != displayedChar[3] || secondsChar[0] != displayedChar[4] || secondsChar[1] != displayedChar[5]) {
displayedChar[0] = hoursChar[0];
displayedChar[1] = hoursChar[1];
displayedChar[2] = minutesChar[0];
displayedChar[3] = minutesChar[1];
displayedChar[4] = secondsChar[0];
displayedChar[5] = secondsChar[1];
if (displayedHour != hour || displayedMinute != minute || displayedSecond != second) {
displayedHour = hour;
displayedMinute = minute;
displayedSecond = second;

if (settingsController.GetClockType() == Controllers::Settings::ClockType::H12) {
if (hoursChar[0] == '0') {
hoursChar[0] = ' ';
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);
}

char timeStr[42];
sprintf(timeStr,
"[TIME]#11cc55 %c%c:%c%c:%c%c %s#",
hoursChar[0],
hoursChar[1],
minutesChar[0],
minutesChar[1],
secondsChar[0],
secondsChar[1],
ampmChar);

lv_label_set_text(label_time, timeStr);
}

if ((year != currentYear) || (month != currentMonth) || (dayOfWeek != currentDayOfWeek) || (day != currentDay)) {
Expand Down

0 comments on commit 6959d8c

Please sign in to comment.