aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/CMakeLists.txt1
-rw-r--r--src/components/settings/Settings.h13
-rw-r--r--src/displayapp/WatchFaces.h14
-rw-r--r--src/displayapp/screens/Clock.cpp15
-rw-r--r--src/displayapp/screens/settings/SettingWatchFace.cpp7
5 files changed, 34 insertions, 16 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 6f022e46..a6e7ad56 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -604,6 +604,7 @@ set(INCLUDE_FILES
displayapp/screens/ApplicationList.h
displayapp/screens/CheckboxList.h
displayapp/Apps.h
+ displayapp/WatchFaces.h
displayapp/screens/Notifications.h
displayapp/screens/HeartRate.h
displayapp/screens/Metronome.h
diff --git a/src/components/settings/Settings.h b/src/components/settings/Settings.h
index d1e71656..0a55c08a 100644
--- a/src/components/settings/Settings.h
+++ b/src/components/settings/Settings.h
@@ -3,6 +3,7 @@
#include <bitset>
#include "components/brightness/BrightnessController.h"
#include "components/fs/FS.h"
+#include "displayapp/WatchFaces.h"
namespace Pinetime {
namespace Controllers {
@@ -61,15 +62,15 @@ namespace Pinetime {
void Init();
void SaveSettings();
- void SetClockFace(uint8_t face) {
- if (face != settings.clockFace) {
+ void SetWatchFace(Pinetime::Applications::WatchFace face) {
+ if (face != settings.watchFace) {
settingsChanged = true;
}
- settings.clockFace = face;
+ settings.watchFace = face;
};
- uint8_t GetClockFace() const {
- return settings.clockFace;
+ Pinetime::Applications::WatchFace GetWatchFace() const {
+ return settings.watchFace;
};
void SetChimeOption(ChimesOption chimeOption) {
@@ -276,7 +277,7 @@ namespace Pinetime {
ClockType clockType = ClockType::H24;
Notification notificationStatus = Notification::On;
- uint8_t clockFace = 0;
+ Pinetime::Applications::WatchFace watchFace = Pinetime::Applications::WatchFace::Digital;
ChimesOption chimesOption = ChimesOption::None;
PineTimeStyle PTS;
diff --git a/src/displayapp/WatchFaces.h b/src/displayapp/WatchFaces.h
new file mode 100644
index 00000000..2982347a
--- /dev/null
+++ b/src/displayapp/WatchFaces.h
@@ -0,0 +1,14 @@
+#pragma once
+
+namespace Pinetime {
+ namespace Applications {
+ enum class WatchFace : uint8_t {
+ Digital = 0,
+ Analog = 1,
+ PineTimeStyle = 2,
+ Terminal = 3,
+ Infineat = 4,
+ CasioStyleG7710 = 5,
+ };
+ }
+}
diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp
index a03dc68b..ce70f23f 100644
--- a/src/displayapp/screens/Clock.cpp
+++ b/src/displayapp/screens/Clock.cpp
@@ -15,6 +15,7 @@
#include "displayapp/screens/WatchFaceCasioStyleG7710.h"
using namespace Pinetime::Applications::Screens;
+using namespace Pinetime::Applications;
Clock::Clock(Controllers::DateTime& dateTimeController,
const Controllers::Battery& batteryController,
@@ -33,23 +34,23 @@ Clock::Clock(Controllers::DateTime& dateTimeController,
motionController {motionController},
filesystem {filesystem},
screen {[this, &settingsController]() {
- switch (settingsController.GetClockFace()) {
- case 0:
+ switch (settingsController.GetWatchFace()) {
+ case WatchFace::Digital:
return WatchFaceDigitalScreen();
break;
- case 1:
+ case WatchFace::Analog:
return WatchFaceAnalogScreen();
break;
- case 2:
+ case WatchFace::PineTimeStyle:
return WatchFacePineTimeStyleScreen();
break;
- case 3:
+ case WatchFace::Terminal:
return WatchFaceTerminalScreen();
break;
- case 4:
+ case WatchFace::Infineat:
return WatchFaceInfineatScreen();
break;
- case 5:
+ case WatchFace::CasioStyleG7710:
return WatchFaceCasioStyleG7710();
break;
}
diff --git a/src/displayapp/screens/settings/SettingWatchFace.cpp b/src/displayapp/screens/settings/SettingWatchFace.cpp
index 285efa72..5498d067 100644
--- a/src/displayapp/screens/settings/SettingWatchFace.cpp
+++ b/src/displayapp/screens/settings/SettingWatchFace.cpp
@@ -3,6 +3,7 @@
#include "displayapp/DisplayApp.h"
#include "displayapp/screens/Screen.h"
#include "components/settings/Settings.h"
+#include "displayapp/WatchFaces.h"
using namespace Pinetime::Applications::Screens;
@@ -47,9 +48,9 @@ std::unique_ptr<Screen> SettingWatchFace::CreateScreen(unsigned int screenNum) c
nScreens,
title,
symbol,
- settingsController.GetClockFace(),
- [&settings = settingsController](uint32_t clockFace) {
- settings.SetClockFace(clockFace);
+ static_cast<uint32_t>(settingsController.GetWatchFace()),
+ [&settings = settingsController](uint32_t index) {
+ settings.SetWatchFace(static_cast<WatchFace>(index));
settings.SaveSettings();
},
watchfacesOnThisScreen);