#pragma once #include #include #include #include #include #include "Screen.h" #include "components/datetime/DateTimeController.h" namespace Pinetime { 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 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; std::unique_ptr screen; std::unique_ptr WatchFaceDigitalScreen(); std::unique_ptr WatchFaceAnalogScreen(); std::unique_ptr PineTimeStyleScreen(); }; } } }