ref: 0ce98c7ac7ba66acaf504be9bb042796e12f2733
src/displayapp/screens/Clock.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
#pragma once #include <lvgl/src/lv_core/lv_obj.h> #include <chrono> #include <cstdint> #include <memory> #include "Screen.h" #include "ScreenList.h" #include "components/datetime/DateTimeController.h" namespace Pinetime { namespace Drivers { class BMA421; } namespace Controllers { class Settings; class Battery; class Ble; class NotificationManager; class MotionController; } namespace Applications { namespace Screens { class Clock : public Screen { public: Clock(DisplayApp* app, Controllers::DateTime& dateTimeController, Controllers::Battery& batteryController, Controllers::Ble& bleController, Controllers::NotificationManager& notificatioManager, Controllers::Settings& settingsController, Controllers::HeartRateController& heartRateController, Controllers::MotionController& motionController); ~Clock() override; bool Refresh() override; bool OnTouchEvent(TouchEvents event) override; private: Controllers::DateTime& dateTimeController; Controllers::Battery& batteryController; Controllers::Ble& bleController; Controllers::NotificationManager& notificatioManager; Controllers::Settings& settingsController; Controllers::HeartRateController& heartRateController; Controllers::MotionController& motionController; ScreenList<2> screens; std::unique_ptr<Screen> WatchFaceDigitalScreen(); std::unique_ptr<Screen> WatchFaceAnalogScreen(); // Examples for more watch faces // std::unique_ptr<Screen> WatchFaceMinimalScreen(); // std::unique_ptr<Screen> WatchFaceCustomScreen(); }; } } } |