lib/graphic/widget/menu/menu_item.h¶
Menu item widget for menu selection options. More...
Classes¶
| Name | |
|---|---|
| struct | CFBD_MenuItemCallbackPack |
| struct | __CFBD_MenuItem |
| struct | __CFBD_MenuItemArray |
Types¶
| Name | |
|---|---|
| typedef void(*)(void *user_data) | CFBD_MenuItemCallback Callback function type for menu item activation. |
| typedef struct __CFBD_MenuItem | CFBD_MenuItem Single menu item structure. |
| typedef struct __CFBD_MenuItemArray | CFBD_MenuItemGroup Array container for menu items. |
Functions¶
| Name | |
|---|---|
| void | CFBD_MenuItemInit(CFBD_MenuItem * menuItem, CFBDGraphic_Point * tl, CFBD_MenuItemCallbackPack * callbacks) |
Detailed Description¶
Menu item widget for menu selection options.
Provides menu item structures and initialization for creating clickable menu options with optional callbacks.
Types Documentation¶
typedef CFBD_MenuItemCallback¶
Callback function type for menu item activation.
Parameters:
- user_data - User-supplied callback context data
Return: void
Called when user selects/activates a menu item.
typedef CFBD_MenuItem¶
Single menu item structure.
See:
Represents one menu item with label, position, and optional callback.
typedef CFBD_MenuItemGroup¶
Array container for menu items.
See: CFBD_MenuItem
Manages dynamic array of menu items with capacity and count tracking.
Functions Documentation¶
function CFBD_MenuItemInit¶
void CFBD_MenuItemInit(
CFBD_MenuItem * menuItem,
CFBDGraphic_Point * tl,
CFBD_MenuItemCallbackPack * callbacks
)
Source code¶
#pragma once
#include "base/point.h"
#include "widget/text.h"
typedef void (*CFBD_MenuItemCallback)(void* user_data);
typedef struct
{
CFBD_MenuItemCallback callback;
void* user_data;
} CFBD_MenuItemCallbackPack;
typedef struct __CFBD_MenuItem
{
char* label;
CFBDGraphic_Point tl;
CFBD_MenuItemCallbackPack on_select;
CFBDGraphic_Text text_obj;
} CFBD_MenuItem;
typedef struct __CFBD_MenuItemArray
{
CFBD_MenuItem* pItems;
size_t capacity;
size_t count;
} CFBD_MenuItemGroup;
void CFBD_MenuItemInit(CFBD_MenuItem* menuItem,
CFBDGraphic_Point* tl,
CFBD_MenuItemCallbackPack* callbacks);
Updated on 2026-02-03 at 13:21:55 +0000