From 8daddf87782c1228a44528da6f67d8dfce3edb40 Mon Sep 17 00:00:00 2001 From: mark9064 <30447455+mark9064@users.noreply.github.com> Date: Wed, 18 Jun 2025 14:09:57 +0100 Subject: Background heartrate measurement Co-Authored-By: Patric Gruber --- src/displayapp/screens/settings/SettingHeartRate.h | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/displayapp/screens/settings/SettingHeartRate.h (limited to 'src/displayapp/screens/settings/SettingHeartRate.h') diff --git a/src/displayapp/screens/settings/SettingHeartRate.h b/src/displayapp/screens/settings/SettingHeartRate.h new file mode 100644 index 00000000..736f2b10 --- /dev/null +++ b/src/displayapp/screens/settings/SettingHeartRate.h @@ -0,0 +1,44 @@ +#pragma once + +#include +#include +#include +#include + +#include "components/settings/Settings.h" +#include "displayapp/screens/Screen.h" + +namespace Pinetime { + + namespace Applications { + namespace Screens { + class SettingHeartRate : public Screen { + public: + explicit SettingHeartRate(Pinetime::Controllers::Settings& settings); + ~SettingHeartRate() override; + + void UpdateSelected(lv_obj_t* object, lv_event_t event); + + private: + struct Option { + std::optional intervalInSeconds; + const char* name; + }; + + Pinetime::Controllers::Settings& settingsController; + + static constexpr std::array options = {{ + {.intervalInSeconds = std::nullopt, .name = " Off"}, + {.intervalInSeconds = 0, .name = "Cont"}, + {.intervalInSeconds = 30, .name = " 30s"}, + {.intervalInSeconds = 60, .name = " 1m"}, + {.intervalInSeconds = 5 * 60, .name = " 5m"}, + {.intervalInSeconds = 10 * 60, .name = " 10m"}, + {.intervalInSeconds = 30 * 60, .name = " 30m"}, + }}; + + lv_obj_t* cbOption[options.size()]; + }; + } + } +} -- cgit v1.2.3-70-g09d2