diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-08-25 10:13:37 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-08-25 10:13:37 +1000 |
| commit | 3b3bc64d19715c418f407d5231795ca5a2c2fa71 (patch) | |
| tree | 87fb1bf2b9ec366abc712f2096a0908d0ae2cc4b /src/ui/modal_progress.cpp | |
| parent | 079b2b53d434869df419da1373aba239990c34d9 (diff) | |
| download | tangara-fw-3b3bc64d19715c418f407d5231795ca5a2c2fa71.tar.gz | |
Add modal dialog support
Diffstat (limited to 'src/ui/modal_progress.cpp')
| -rw-r--r-- | src/ui/modal_progress.cpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/ui/modal_progress.cpp b/src/ui/modal_progress.cpp new file mode 100644 index 00000000..f60b324a --- /dev/null +++ b/src/ui/modal_progress.cpp @@ -0,0 +1,46 @@ +/* + * Copyright 2023 jacqueline <me@jacqueline.id.au> + * + * SPDX-License-Identifier: GPL-3.0-only + */ + +#include "modal_progress.hpp" + +#include "core/lv_event.h" +#include "core/lv_obj.h" +#include "core/lv_obj_tree.h" +#include "esp_log.h" + +#include "core/lv_group.h" +#include "core/lv_obj_pos.h" +#include "event_queue.hpp" +#include "extra/widgets/list/lv_list.h" +#include "extra/widgets/menu/lv_menu.h" +#include "extra/widgets/spinner/lv_spinner.h" +#include "hal/lv_hal_disp.h" +#include "index.hpp" +#include "misc/lv_area.h" +#include "ui_events.hpp" +#include "ui_fsm.hpp" +#include "widget_top_bar.hpp" +#include "widgets/lv_label.h" + +namespace ui { +namespace modals { + +Progress::Progress(Screen* host, std::string title_text) : Modal(host) { + lv_obj_set_layout(root_, LV_LAYOUT_FLEX); + lv_obj_set_flex_flow(root_, LV_FLEX_FLOW_COLUMN); + lv_obj_set_flex_align(root_, LV_FLEX_ALIGN_SPACE_EVENLY, LV_FLEX_ALIGN_CENTER, + LV_FLEX_ALIGN_CENTER); + + lv_obj_t* title = lv_label_create(root_); + lv_label_set_text(title, title_text.c_str()); + lv_obj_set_size(title, LV_SIZE_CONTENT, LV_SIZE_CONTENT); + + lv_obj_t* spinner = lv_spinner_create(root_, 3000, 45); + lv_obj_set_size(spinner, 16, 16); +} + +} // namespace modals +} // namespace ui |
