From 4d2aacf8639f565b822020cdb43c011e1a72dc7b Mon Sep 17 00:00:00 2001 From: JF Date: Sat, 14 Mar 2020 16:33:47 +0100 Subject: Display battery level and BLE connection status using icon on Clock screen. --- src/DisplayApp/Screens/BatteryIcon.cpp | 62 ++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 src/DisplayApp/Screens/BatteryIcon.cpp (limited to 'src/DisplayApp/Screens/BatteryIcon.cpp') diff --git a/src/DisplayApp/Screens/BatteryIcon.cpp b/src/DisplayApp/Screens/BatteryIcon.cpp new file mode 100644 index 00000000..575aa092 --- /dev/null +++ b/src/DisplayApp/Screens/BatteryIcon.cpp @@ -0,0 +1,62 @@ +#include "BatteryIcon.h" + +using namespace Pinetime::Applications::Screens; + + +extern lv_img_dsc_t os_battery_error; +extern lv_img_dsc_t os_batterycharging_100; +extern lv_img_dsc_t os_batterycharging_090; +extern lv_img_dsc_t os_batterycharging_080; +extern lv_img_dsc_t os_batterycharging_070; +extern lv_img_dsc_t os_batterycharging_060; +extern lv_img_dsc_t os_batterycharging_050; +extern lv_img_dsc_t os_batterycharging_040; +extern lv_img_dsc_t os_batterycharging_030; +extern lv_img_dsc_t os_batterycharging_020; +extern lv_img_dsc_t os_batterycharging_010; +extern lv_img_dsc_t os_batterycharging_005; + +extern lv_img_dsc_t os_battery_100; +extern lv_img_dsc_t os_battery_090; +extern lv_img_dsc_t os_battery_080; +extern lv_img_dsc_t os_battery_070; +extern lv_img_dsc_t os_battery_060; +extern lv_img_dsc_t os_battery_050; +extern lv_img_dsc_t os_battery_040; +extern lv_img_dsc_t os_battery_030; +extern lv_img_dsc_t os_battery_020; +extern lv_img_dsc_t os_battery_010; +extern lv_img_dsc_t os_battery_005; + + +lv_img_dsc_t *BatteryIcon::GetIcon(bool isCharging, float batteryPercent) { + if(isCharging) { + if(batteryPercent > 90.0f) return &os_batterycharging_100; + else if(batteryPercent > 80.0f) return &os_batterycharging_090; + else if(batteryPercent > 70.0f) return &os_batterycharging_080; + else if(batteryPercent > 60.0f) return &os_batterycharging_070; + else if(batteryPercent > 50.0f) return &os_batterycharging_060; + else if(batteryPercent > 40.0f) return &os_batterycharging_050; + else if(batteryPercent > 30.0f) return &os_batterycharging_040; + else if(batteryPercent > 20.0f) return &os_batterycharging_030; + else if(batteryPercent > 10.0f) return &os_batterycharging_020; + else if(batteryPercent > 5.0f) return &os_batterycharging_010; + else return &os_batterycharging_005; + } else { + if(batteryPercent > 90.0f) return &os_battery_100; + else if(batteryPercent > 80.0f) return &os_battery_090; + else if(batteryPercent > 70.0f) return &os_battery_080; + else if(batteryPercent > 60.0f) return &os_battery_070; + else if(batteryPercent > 50.0f) return &os_battery_060; + else if(batteryPercent > 40.0f) return &os_battery_050; + else if(batteryPercent > 30.0f) return &os_battery_040; + else if(batteryPercent > 20.0f) return &os_battery_030; + else if(batteryPercent > 10.0f) return &os_battery_020; + else if(batteryPercent > 5.0f) return &os_battery_010; + else return &os_battery_005; + } +} + +lv_img_dsc_t *BatteryIcon::GetUnknownIcon() { + return &os_battery_error; +} -- cgit v1.2.3-70-g09d2