summaryrefslogtreecommitdiff
path: root/src/displayapp/screens/Clock.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/displayapp/screens/Clock.cpp')
-rw-r--r--src/displayapp/screens/Clock.cpp36
1 files changed, 16 insertions, 20 deletions
diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp
index 4f0efd92..3b288d94 100644
--- a/src/displayapp/screens/Clock.cpp
+++ b/src/displayapp/screens/Clock.cpp
@@ -34,24 +34,20 @@ Clock::Clock(DisplayApp* app,
settingsController {settingsController},
heartRateController {heartRateController},
motionController {motionController},
- screens {app,
- settingsController.GetClockFace(),
- {
- [this]() -> std::unique_ptr<Screen> {
- return WatchFaceDigitalScreen();
- },
- [this]() -> std::unique_ptr<Screen> {
- return WatchFaceAnalogScreen();
- },
- [this]() -> std::unique_ptr<Screen> {
- return PineTimeStyleScreen();
- },
- // Examples for more watch faces
- //[this]() -> std::unique_ptr<Screen> { return WatchFaceMinimalScreen(); },
- //[this]() -> std::unique_ptr<Screen> { return WatchFaceCustomScreen(); }
- },
- Screens::ScreenListModes::LongPress} {
-
+ screen {[this, &settingsController]() {
+ switch (settingsController.GetClockFace()) {
+ case 0:
+ return WatchFaceDigitalScreen();
+ break;
+ case 1:
+ return WatchFaceAnalogScreen();
+ break;
+ case 2:
+ return PineTimeStyleScreen();
+ break;
+ }
+ return WatchFaceDigitalScreen();
+ }()} {
settingsController.SetAppMenu(0);
}
@@ -60,12 +56,12 @@ Clock::~Clock() {
}
bool Clock::Refresh() {
- screens.Refresh();
+ screen->Refresh();
return running;
}
bool Clock::OnTouchEvent(Pinetime::Applications::TouchEvents event) {
- return screens.OnTouchEvent(event);
+ return screen->OnTouchEvent(event);
}
std::unique_ptr<Screen> Clock::WatchFaceDigitalScreen() {