summaryrefslogtreecommitdiff
path: root/src/ui/screen_menu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/screen_menu.cpp')
-rw-r--r--src/ui/screen_menu.cpp52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/ui/screen_menu.cpp b/src/ui/screen_menu.cpp
new file mode 100644
index 00000000..da0a7d3c
--- /dev/null
+++ b/src/ui/screen_menu.cpp
@@ -0,0 +1,52 @@
+/*
+ * Copyright 2023 jacqueline <me@jacqueline.id.au>
+ *
+ * SPDX-License-Identifier: GPL-3.0-only
+ */
+
+#include "screen_menu.hpp"
+
+#include "core/lv_group.h"
+#include "core/lv_obj_pos.h"
+#include "extra/widgets/menu/lv_menu.h"
+#include "extra/widgets/spinner/lv_spinner.h"
+#include "hal/lv_hal_disp.h"
+#include "misc/lv_area.h"
+#include "widgets/lv_label.h"
+
+namespace ui {
+namespace screens {
+
+Menu::Menu() {
+ lv_obj_t *menu = lv_menu_create(root_);
+ lv_obj_set_size(menu, lv_disp_get_hor_res(NULL), lv_disp_get_ver_res(NULL));
+ lv_obj_center(menu);
+
+ lv_obj_t *main_page = lv_menu_page_create(menu, NULL);
+
+ lv_obj_t *container;
+ lv_obj_t *label;
+
+ container = lv_menu_cont_create(main_page);
+ label = lv_label_create(container);
+ lv_label_set_text(label, "I am an item");
+
+ container = lv_menu_cont_create(main_page);
+ label = lv_label_create(container);
+ lv_label_set_text(label, "I am also an item");
+
+ container = lv_menu_cont_create(main_page);
+ label = lv_label_create(container);
+ lv_label_set_text(label, "Item #3");
+
+ container = lv_menu_cont_create(main_page);
+ label = lv_label_create(container);
+ lv_label_set_text(label, "Yay!");
+
+ lv_menu_set_page(menu, main_page);
+}
+
+Menu::~Menu() {}
+
+} // namespace screens
+} // namespace ui