Loading...
Searching...
No Matches
submenu.h
Go to the documentation of this file.
1
6#pragma once
7
8#include <gui/view.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
15typedef struct Submenu Submenu;
16typedef void (*SubmenuItemCallback)(void* context, uint32_t index);
17typedef void (*SubmenuItemCallbackEx)(void* context, InputType input_type, uint32_t index);
18
26
31void submenu_free(Submenu* submenu);
32
40
51 Submenu* submenu,
52 const char* label,
53 uint32_t index,
54 SubmenuItemCallback callback,
55 void* callback_context);
56
67 Submenu* submenu,
68 const char* label,
69 uint32_t index,
70 SubmenuItemCallbackEx callback,
71 void* callback_context);
72
79void submenu_change_item_label(Submenu* submenu, uint32_t index, const char* label);
80
85void submenu_reset(Submenu* submenu);
86
93uint32_t submenu_get_selected_item(Submenu* submenu);
94
100void submenu_set_selected_item(Submenu* submenu, uint32_t index);
101
107void submenu_set_header(Submenu* submenu, const char* header);
108
109#ifdef __cplusplus
110}
111#endif
InputType
Input Types Some of them are physical events and some logical.
Definition input.h:21
Definition services/gui/modules/submenu.c:7
Definition view_i.h:16
void submenu_add_item_ex(Submenu *submenu, const char *label, uint32_t index, SubmenuItemCallbackEx callback, void *callback_context)
Add item to submenu with extended press events.
Definition services/gui/modules/submenu.c:222
void submenu_free(Submenu *submenu)
Deinitialize and free submenu.
Definition services/gui/modules/submenu.c:178
uint32_t submenu_get_selected_item(Submenu *submenu)
Get submenu selected item index.
Definition services/gui/modules/submenu.c:281
Submenu * submenu_alloc(void)
Allocate and initialize submenu.
Definition services/gui/modules/submenu.c:156
void submenu_set_header(Submenu *submenu, const char *header)
Set optional header for submenu.
Definition services/gui/modules/submenu.c:411
View * submenu_get_view(Submenu *submenu)
Get submenu view.
Definition services/gui/modules/submenu.c:193
void submenu_change_item_label(Submenu *submenu, uint32_t index, const char *label)
Change label of an existing item.
Definition services/gui/modules/submenu.c:246
void submenu_reset(Submenu *submenu)
Remove all items from submenu.
Definition services/gui/modules/submenu.c:266
void submenu_add_item(Submenu *submenu, const char *label, uint32_t index, SubmenuItemCallback callback, void *callback_context)
Add item to submenu.
Definition services/gui/modules/submenu.c:198
void submenu_set_selected_item(Submenu *submenu, uint32_t index)
Set submenu selected item by index.
Definition services/gui/modules/submenu.c:300
GUI: View API.