#pragma once #include "displayapp/Apps.h" #include "displayapp/screens/Screen.h" #include #include #include #include #include namespace Pinetime { namespace Applications { namespace Screens { class CheckboxList : public Screen { public: static constexpr size_t MaxItems = 4; CheckboxList(const uint8_t screenID, const uint8_t numScreens, DisplayApp* app, const char* optionsTitle, const char* optionsSymbol, uint32_t originalValue, std::function OnValueChanged, std::array options); ~CheckboxList() override; void UpdateSelected(lv_obj_t* object, lv_event_t event); private: const uint8_t screenID; std::function OnValueChanged; std::array options; std::array cbOption; std::array pageIndicatorBasePoints; std::array pageIndicatorPoints; lv_obj_t* pageIndicatorBase; lv_obj_t* pageIndicator; uint32_t value; }; } } }