diff options
Diffstat (limited to 'src/displayapp/screens/Clock.h')
| -rw-r--r-- | src/displayapp/screens/Clock.h | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/displayapp/screens/Clock.h b/src/displayapp/screens/Clock.h new file mode 100644 index 0000000..5001dce --- /dev/null +++ b/src/displayapp/screens/Clock.h @@ -0,0 +1,52 @@ +#pragma once + +#include <lvgl/src/lv_core/lv_obj.h> +#include <chrono> +#include <cstdint> +#include <memory> +#include "displayapp/screens/Screen.h" +#include "components/datetime/DateTimeController.h" +#include "systemtask/SystemTask.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::MotionController& motionController, + System::SystemTask& systemTask); + ~Clock() override; + + bool OnTouchEvent(TouchEvents event) override; + bool OnButtonPushed() override; + + System::SystemTask& systemTask; + private: + Controllers::DateTime& dateTimeController; + Controllers::Battery& batteryController; + Controllers::Ble& bleController; + Controllers::NotificationManager& notificatioManager; + Controllers::Settings& settingsController; + Controllers::MotionController& motionController; + + std::unique_ptr<Screen> screen; + std::unique_ptr<Screen> WatchFaceDigitalScreen(); + std::unique_ptr<Screen> WatchFaceTerminalScreen(); + }; + } + } +} |
