aboutsummaryrefslogtreecommitdiffstats
path: root/roms/u-boot-sam460ex/board/ACube/menu/label_items.c
diff options
context:
space:
mode:
authorAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
committerAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
commitaf1a266670d040d2f4083ff309d732d648afba2a (patch)
tree2fc46203448ddcc6f81546d379abfaeb323575e9 /roms/u-boot-sam460ex/board/ACube/menu/label_items.c
parente02cda008591317b1625707ff8e115a4841aa889 (diff)
Add submodule dependency filesHEADmaster
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'roms/u-boot-sam460ex/board/ACube/menu/label_items.c')
-rw-r--r--roms/u-boot-sam460ex/board/ACube/menu/label_items.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/roms/u-boot-sam460ex/board/ACube/menu/label_items.c b/roms/u-boot-sam460ex/board/ACube/menu/label_items.c
new file mode 100644
index 000000000..a74d4c32b
--- /dev/null
+++ b/roms/u-boot-sam460ex/board/ACube/menu/label_items.c
@@ -0,0 +1,47 @@
+#include "menu.h"
+#include <stdarg.h>
+#include "label_items.h"
+#include "creation.h"
+
+struct label_item
+{
+ item_t item;
+ char *display_text;
+};
+
+void itemtype_label_render(menu_t *menu, item_t *item, int state)
+{
+ struct label_item *it = (struct label_item *)item;
+ int x,y;
+ x = menu->x + item->x;
+ y = menu->y + item->y;
+
+ video_draw_text(x,y, state, it->display_text, item->w);
+}
+
+void itemtype_label_invoke(menu_t *menu, item_t *item, int key)
+{
+}
+
+item_t *itemtype_label_alloc(menu_t *menu, va_list args)
+{
+ //char *s;
+ struct label_item *item = (struct label_item *)malloc(sizeof(struct label_item));
+ if (!item) return NULL;
+ menu_item_init(&item->item);
+
+ item->display_text = va_arg(args, char *);
+
+ item->item.f_render = itemtype_label_render;
+ item->item.f_save = NULL;
+ item->item.f_invoke = itemtype_label_invoke;
+ item->item.f_load = NULL;
+
+ item->item.w = strlen(item->display_text);
+ item->item.front_width = item->item.w/2;
+ item->item.back_width = item->item.w - item->item.front_width;
+ item->item.h = 1;
+ item->item.disabled = true;
+
+ return (item_t *)item;
+}