diff options
| author | Jean-François Milants <jf@codingfield.com> | 2021-04-09 20:47:24 +0200 |
|---|---|---|
| committer | Jean-François Milants <jf@codingfield.com> | 2021-04-09 20:47:24 +0200 |
| commit | 63584b6561cbc31095354b06e356f700dcf0e32b (patch) | |
| tree | b8ee17d8bfdc57c3b80b7c918f3431d198939856 /src/displayapp/screens/List.h | |
| parent | 3934e9bef20c5c2ad393e20cfff3a5a1b0d24569 (diff) | |
| parent | 9096d1db4c6be9f4a2cc8af99a994c219f25108c (diff) | |
Merge branch 'develop' into notification-title
# Conflicts:
# src/displayapp/screens/Notifications.cpp
Diffstat (limited to 'src/displayapp/screens/List.h')
| -rw-r--r-- | src/displayapp/screens/List.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/displayapp/screens/List.h b/src/displayapp/screens/List.h new file mode 100644 index 00000000..739a91c3 --- /dev/null +++ b/src/displayapp/screens/List.h @@ -0,0 +1,49 @@ +#pragma once + +#include <lvgl/lvgl.h> +#include <cstdint> +#include <memory> +#include "Screen.h" +#include "../Apps.h" +#include "components/settings/Settings.h" + +#define MAXLISTITEMS 4 + +namespace Pinetime { + namespace Applications { + namespace Screens { + class List : public Screen { + public: + struct Applications { + const char* icon; + const char* name; + Pinetime::Applications::Apps application; + }; + + explicit List(uint8_t screenID, uint8_t numScreens, + DisplayApp* app, + Controllers::Settings& settingsController, + std::array<Applications, MAXLISTITEMS>& applications); + ~List() override; + + bool Refresh() override; + + + void OnButtonEvent(lv_obj_t *object, lv_event_t event); + + private: + + Controllers::Settings& settingsController; + Pinetime::Applications::Apps apps[MAXLISTITEMS]; + + lv_obj_t * itemApps[MAXLISTITEMS]; + + lv_point_t pageIndicatorBasePoints[2]; + lv_point_t pageIndicatorPoints[2]; + lv_obj_t* pageIndicatorBase; + lv_obj_t* pageIndicator; + + }; + } + } +} |
