diff options
Diffstat (limited to 'src/displayapp/widgets/StatusIcons.h')
-rw-r--r-- | src/displayapp/widgets/StatusIcons.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/displayapp/widgets/StatusIcons.h b/src/displayapp/widgets/StatusIcons.h new file mode 100644 index 00000000..f4a30a80 --- /dev/null +++ b/src/displayapp/widgets/StatusIcons.h @@ -0,0 +1,39 @@ +#pragma once + +#include <lvgl/lvgl.h> + +#include "displayapp/screens/Screen.h" +#include "components/battery/BatteryController.h" +#include "components/ble/BleController.h" +#include "displayapp/screens/BatteryIcon.h" + +namespace Pinetime { + namespace Applications { + namespace Widgets { + class StatusIcons { + public: + StatusIcons(Controllers::Battery& batteryController, Controllers::Ble& bleController); + void Align(); + void Create(); + lv_obj_t* GetObject() { + return container; + } + void Update(); + + private: + Screens::BatteryIcon batteryIcon; + Pinetime::Controllers::Battery& batteryController; + Controllers::Ble& bleController; + + Screens::DirtyValue<uint8_t> batteryPercentRemaining {}; + Screens::DirtyValue<bool> powerPresent {}; + Screens::DirtyValue<bool> bleState {}; + Screens::DirtyValue<bool> bleRadioEnabled {}; + + lv_obj_t* bleIcon; + lv_obj_t* batteryPlug; + lv_obj_t* container; + }; + } + } +} |