diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-10-04 14:47:30 +1100 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-10-04 14:47:30 +1100 |
| commit | 28633e857f86a21d874117fd677de5e8ad21d8d3 (patch) | |
| tree | d016f7da3b7d5b8ca9c577ea5eaf783a925e418b /src/ui/include/modal.hpp | |
| parent | 7a7fafdd92f8ddc1143a00febf0a540cfefaf099 (diff) | |
| download | tangara-fw-28633e857f86a21d874117fd677de5e8ad21d8d3.tar.gz | |
Implement UI for enqueuing instead of replacing the current track
Diffstat (limited to 'src/ui/include/modal.hpp')
| -rw-r--r-- | src/ui/include/modal.hpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/ui/include/modal.hpp b/src/ui/include/modal.hpp index a5ac69b8..61e52cdf 100644 --- a/src/ui/include/modal.hpp +++ b/src/ui/include/modal.hpp @@ -30,6 +30,15 @@ class Modal { lv_obj_t* const root_; lv_group_t* const group_; + std::pmr::vector<std::unique_ptr<EventBinding>> event_bindings_; + + template <typename T> + auto lv_bind(lv_obj_t* obj, lv_event_code_t ev, T fn) -> void { + auto binding = std::make_unique<EventBinding>(obj, ev); + binding->signal().connect(fn); + event_bindings_.push_back(std::move(binding)); + } + private: Screen* host_; }; |
