summaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
Diffstat (limited to 'src/components')
-rw-r--r--src/components/alarm/AlarmController.cpp2
-rw-r--r--src/components/alarm/AlarmController.h2
-rw-r--r--src/components/datetime/DateTimeController.cpp5
-rw-r--r--src/components/datetime/DateTimeController.h1
-rw-r--r--src/components/settings/Settings.h34
5 files changed, 38 insertions, 6 deletions
diff --git a/src/components/alarm/AlarmController.cpp b/src/components/alarm/AlarmController.cpp
index 9f4e9105..d97e1cff 100644
--- a/src/components/alarm/AlarmController.cpp
+++ b/src/components/alarm/AlarmController.cpp
@@ -82,7 +82,7 @@ void AlarmController::ScheduleAlarm() {
state = AlarmState::Set;
}
-uint32_t AlarmController::SecondsToAlarm() {
+uint32_t AlarmController::SecondsToAlarm() const {
return std::chrono::duration_cast<std::chrono::seconds>(alarmTime - dateTimeController.CurrentDateTime()).count();
}
diff --git a/src/components/alarm/AlarmController.h b/src/components/alarm/AlarmController.h
index d630a128..91f60f5a 100644
--- a/src/components/alarm/AlarmController.h
+++ b/src/components/alarm/AlarmController.h
@@ -36,7 +36,7 @@ namespace Pinetime {
void ScheduleAlarm();
void DisableAlarm();
void SetOffAlarmNow();
- uint32_t SecondsToAlarm();
+ uint32_t SecondsToAlarm() const;
void StopAlerting();
enum class AlarmState { Not_Set, Set, Alerting };
enum class RecurType { None, Daily, Weekdays };
diff --git a/src/components/datetime/DateTimeController.cpp b/src/components/datetime/DateTimeController.cpp
index ba04705f..4dc16329 100644
--- a/src/components/datetime/DateTimeController.cpp
+++ b/src/components/datetime/DateTimeController.cpp
@@ -7,6 +7,7 @@ using namespace Pinetime::Controllers;
namespace {
char const* DaysStringShort[] = {"--", "MON", "TUE", "WED", "THU", "FRI", "SAT", "SUN"};
+ char const* DaysStringShortLow[] = {"--", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"};
char const* MonthsString[] = {"--", "JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", "AUG", "SEP", "OCT", "NOV", "DEC"};
char const* MonthsStringLow[] = {"--", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
}
@@ -126,6 +127,10 @@ const char* DateTime::MonthShortToStringLow(Months month) {
return MonthsStringLow[static_cast<uint8_t>(month)];
}
+const char* DateTime::DayOfWeekShortToStringLow() const {
+ return DaysStringShortLow[static_cast<uint8_t>(dayOfWeek)];
+}
+
void DateTime::Register(Pinetime::System::SystemTask* systemTask) {
this->systemTask = systemTask;
}
diff --git a/src/components/datetime/DateTimeController.h b/src/components/datetime/DateTimeController.h
index 00bbc2ee..81319d15 100644
--- a/src/components/datetime/DateTimeController.h
+++ b/src/components/datetime/DateTimeController.h
@@ -64,6 +64,7 @@ namespace Pinetime {
const char* MonthShortToString() const;
const char* DayOfWeekShortToString() const;
static const char* MonthShortToStringLow(Months month);
+ const char* DayOfWeekShortToStringLow() const;
std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds> CurrentDateTime() const {
return currentDateTime;
diff --git a/src/components/settings/Settings.h b/src/components/settings/Settings.h
index f0b86690..e39ed2f9 100644
--- a/src/components/settings/Settings.h
+++ b/src/components/settings/Settings.h
@@ -9,7 +9,7 @@ namespace Pinetime {
class Settings {
public:
enum class ClockType : uint8_t { H24, H12 };
- enum class Notification : uint8_t { ON, OFF };
+ enum class Notification : uint8_t { On, Off, Sleep };
enum class ChimesOption : uint8_t { None, Hours, HalfHours };
enum class WakeUpMode : uint8_t {
SingleTap = 0,
@@ -34,13 +34,18 @@ namespace Pinetime {
Navy,
Magenta,
Purple,
- Orange
+ Orange,
+ Pink
};
struct PineTimeStyle {
Colors ColorTime = Colors::Teal;
Colors ColorBar = Colors::Teal;
Colors ColorBG = Colors::Black;
};
+ struct WatchFaceInfineat {
+ bool showSideCover = true;
+ int colorIndex = 0;
+ };
Settings(Pinetime::Controllers::FS& fs);
@@ -94,6 +99,26 @@ namespace Pinetime {
return settings.PTS.ColorBG;
};
+ void SetInfineatShowSideCover(bool show) {
+ if (show != settings.watchFaceInfineat.showSideCover) {
+ settings.watchFaceInfineat.showSideCover = show;
+ settingsChanged = true;
+ }
+ };
+ bool GetInfineatShowSideCover() const {
+ return settings.watchFaceInfineat.showSideCover;
+ };
+
+ void SetInfineatColorIndex(int index) {
+ if (index != settings.watchFaceInfineat.colorIndex) {
+ settings.watchFaceInfineat.colorIndex = index;
+ settingsChanged = true;
+ }
+ };
+ int GetInfineatColorIndex() const {
+ return settings.watchFaceInfineat.colorIndex;
+ };
+
void SetAppMenu(uint8_t menu) {
appMenu = menu;
};
@@ -227,13 +252,15 @@ namespace Pinetime {
uint32_t screenTimeOut = 15000;
ClockType clockType = ClockType::H24;
- Notification notificationStatus = Notification::ON;
+ Notification notificationStatus = Notification::On;
uint8_t clockFace = 0;
ChimesOption chimesOption = ChimesOption::None;
PineTimeStyle PTS;
+ WatchFaceInfineat watchFaceInfineat;
+
std::bitset<4> wakeUpMode {0};
uint16_t shakeWakeThreshold = 150;
Controllers::BrightnessController::Levels brightLevel = Controllers::BrightnessController::Levels::Medium;
@@ -245,7 +272,6 @@ namespace Pinetime {
uint8_t appMenu = 0;
uint8_t settingsMenu = 0;
uint8_t watchFacesMenu = 0;
-
/* ble state is intentionally not saved with the other watch settings and initialized
* to off (false) on every boot because we always want ble to be enabled on startup
*/