diff options
| author | JF <jf@codingfield.com> | 2019-12-28 13:34:50 (GMT) |
|---|---|---|
| committer | JF <jf@codingfield.com> | 2019-12-28 13:34:50 (GMT) |
| commit | b744b96622e684a2aa29c358e124f288ba3cf9cc (patch) | |
| tree | bd3971fc9ec41b72089b1e7698c6520e3ff548b2 /src/DisplayApp/DisplayApp.h | |
| parent | 92985eb98be0cc1c6b3951172f8bbaca456bb608 (diff) | |
Add DateTimeController to manage the time.
Use messages in message queues to refresh the UI
Diffstat (limited to 'src/DisplayApp/DisplayApp.h')
| -rw-r--r-- | src/DisplayApp/DisplayApp.h | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/src/DisplayApp/DisplayApp.h b/src/DisplayApp/DisplayApp.h index 3bc9f46..24b8e45 100644 --- a/src/DisplayApp/DisplayApp.h +++ b/src/DisplayApp/DisplayApp.h @@ -8,6 +8,7 @@ #include <queue.h> #include <Components/Battery/BatteryController.h> #include <Components/Ble/BleController.h> +#include <Components/DateTime/DateTimeController.h> #include "lcdfont14.h" extern const FONT_INFO lCD_70ptFontInfo; @@ -17,15 +18,11 @@ namespace Pinetime { class DisplayApp { public: enum class States {Idle, Running}; - enum class Messages : uint8_t {GoToSleep, GoToRunning} ; - DisplayApp(Pinetime::Controllers::Battery& batteryController, Pinetime::Controllers::Ble& bleController); + enum class Messages : uint8_t {GoToSleep, GoToRunning, UpdateDateTime, UpdateBleConnection, UpdateBatteryLevel} ; + DisplayApp(Controllers::Battery &batteryController, + Controllers::Ble &bleController, + Controllers::DateTime& dateTimeController); void Start(); - - void Minutes(uint8_t m); - void Hours(uint8_t h); - - void SetTime(uint8_t minutes, uint8_t hours); - void PushMessage(Messages msg); private: @@ -39,6 +36,8 @@ namespace Pinetime { const FONT_INFO smallFont {lCD_14ptFontInfo.height, lCD_14ptFontInfo.startChar, lCD_14ptFontInfo.endChar, lCD_14ptFontInfo.spacePixels, lCD_14ptFontInfo.charInfo, lCD_14ptFontInfo.data}; void Refresh(); + static const char* MonthToString(Pinetime::Controllers::DateTime::Months month); + static const char* DayOfWeekToString(Pinetime::Controllers::DateTime::Days dayOfWeek); uint8_t seconds = 0; uint8_t minutes = 0; uint8_t hours = 0; @@ -55,8 +54,15 @@ namespace Pinetime { Pinetime::Controllers::Battery &batteryController; Pinetime::Controllers::Ble &bleController; - uint16_t battery = 0; - bool bleConnected = false; + Pinetime::Controllers::DateTime& dateTimeController; + bool bleConnectionUpdated = false; + bool batteryLevelUpdated = false; + + static char const *DaysString[]; + + static char const *MonthsString[]; + + bool dateUpdated = false; }; } |
